changeset 5775:ace8d8d26933

[project @ 2006-04-24 19:13:06 by jwe]
author jwe
date Mon, 24 Apr 2006 19:13:11 +0000
parents e7af222e98b0
children 1182d6852172
files ChangeLog.1 aclocal.m4 configure.in doc/interpreter/Makefile.in doc/interpreter/basics.txi doc/interpreter/func.txi doc/interpreter/intro.txi doc/interpreter/io.txi doc/interpreter/linalg.txi doc/interpreter/matrix.txi doc/interpreter/plot.txi doc/interpreter/signal.txi doc/interpreter/stats.txi doc/interpreter/strings.txi libcruft/Makefile.in libcruft/Makerules.in libcruft/misc/cquit.c libcruft/misc/f77-fcn.h libcruft/misc/machar.c liboctave/Array-util.cc liboctave/Array.cc liboctave/Array.h liboctave/CMatrix.cc liboctave/CNDArray.cc liboctave/CNDArray.h liboctave/CSparse.cc liboctave/CmplxDET.h liboctave/DASPK.cc liboctave/DASRT.cc liboctave/DASSL.cc liboctave/DiagArray2.h liboctave/Quad.cc liboctave/Quad.h liboctave/Sparse-op-defs.h liboctave/Sparse.cc liboctave/Sparse.h liboctave/SparseCmplxQR.cc liboctave/SparseQR.cc liboctave/SparseType.cc liboctave/boolMatrix.cc liboctave/boolNDArray.cc liboctave/boolNDArray.h liboctave/boolSparse.cc liboctave/byte-swap.h liboctave/chMatrix.cc liboctave/chNDArray.cc liboctave/chNDArray.h liboctave/cmd-edit.cc liboctave/cmd-hist.cc liboctave/dMatrix.cc liboctave/dNDArray.cc liboctave/dNDArray.h liboctave/dSparse.cc liboctave/data-conv.cc liboctave/dbleDET.h liboctave/file-ops.cc liboctave/file-stat.cc liboctave/glob-match.cc liboctave/intNDArray.cc liboctave/intNDArray.h liboctave/lo-ieee.h liboctave/lo-mappers.cc liboctave/lo-specfun.cc liboctave/lo-utils.cc liboctave/mach-info.cc liboctave/oct-alloc.cc liboctave/oct-env.cc liboctave/oct-fftw.cc liboctave/oct-group.cc liboctave/oct-rl-edit.c liboctave/oct-shlib.cc liboctave/randmtzig.c liboctave/randpoisson.c liboctave/so-array.cc liboctave/sparse-dmsolve.cc mk-opts.pl scripts/audio/mu2lin.m scripts/control/base/lsim.m scripts/image/ind2rgb.m scripts/linear-algebra/cross.m scripts/linear-algebra/krylov.m scripts/miscellaneous/dir.m scripts/miscellaneous/doc.m scripts/miscellaneous/dump_prefs.m scripts/miscellaneous/fileattrib.m scripts/path/setpath.m scripts/plot/__axis_label__.m scripts/plot/axis.m scripts/plot/contour.m scripts/plot/loglog.m scripts/plot/mesh.m scripts/plot/multiplot.m scripts/plot/plot.m scripts/plot/polar.m scripts/plot/print.m scripts/plot/semilogx.m scripts/plot/semilogy.m scripts/plot/subplot.m scripts/plot/title.m scripts/plot/xlabel.m scripts/plot/ylabel.m scripts/plot/zlabel.m scripts/signal/freqz_plot.m scripts/sparse/spstats.m scripts/testfun/test.m src/Cell.h src/DLD-FUNCTIONS/__qp__.cc src/DLD-FUNCTIONS/dispatch.cc src/DLD-FUNCTIONS/fftw_wisdom.cc src/DLD-FUNCTIONS/gcd.cc src/DLD-FUNCTIONS/getrusage.cc src/DLD-FUNCTIONS/inv.cc src/DLD-FUNCTIONS/luinc.cc src/DLD-FUNCTIONS/matrix_type.cc src/DLD-FUNCTIONS/quad.cc src/DLD-FUNCTIONS/qz.cc src/DLD-FUNCTIONS/regexp.cc src/DLD-FUNCTIONS/sort.cc src/DLD-FUNCTIONS/sqrtm.cc src/__gnuplot_raw__.l src/bitfcns.cc src/c-file-ptr-stream.cc src/c-file-ptr-stream.h src/data.cc src/defaults.cc src/defun-int.h src/defun.cc src/dirfns.cc src/error.cc src/file-io.cc src/fn-cache.cc src/fn-cache.h src/help.cc src/input.cc src/lex.h src/lex.l src/load-save.cc src/ls-hdf5.cc src/ls-mat-ascii.cc src/ls-mat5.cc src/ls-oct-ascii.cc src/ls-oct-binary.cc src/mappers.cc src/oct-hist.cc src/oct-lvalue.h src/oct-obj.h src/oct-prcstrm.h src/oct-stdstrm.h src/oct-stream.cc src/octave.cc src/ops.h src/ov-base-sparse.cc src/ov-base.cc src/ov-bool-mat.cc src/ov-bool-sparse.cc src/ov-bool-sparse.h src/ov-bool.cc src/ov-builtin.cc src/ov-cell.cc src/ov-ch-mat.cc src/ov-complex.cc src/ov-complex.h src/ov-cx-mat.cc src/ov-cx-sparse.cc src/ov-fcn-handle.cc src/ov-fcn-inline.cc src/ov-intx.h src/ov-list.cc src/ov-mapper.cc src/ov-range.cc src/ov-range.h src/ov-re-mat.cc src/ov-re-sparse.cc src/ov-scalar.cc src/ov-str-mat.cc src/ov-streamoff.cc src/ov-struct.cc src/ov-typeinfo.cc src/ov-usr-fcn.cc src/ov.cc src/ov.h src/pager.cc src/parse.y src/pr-output.cc src/pt-arg-list.cc src/pt-assign.cc src/pt-except.cc src/pt-id.cc src/pt-idx.cc src/pt-loop.cc src/pt-select.cc src/pt-stmt.cc src/sighandlers.cc src/sighandlers.h src/sparse-xpow.cc src/symtab.cc src/symtab.h src/syscalls.cc src/sysdep.cc src/toplev.cc src/unwind-prot.cc src/utils.cc src/variables.cc src/xpow.cc test/octave.test/linalg/qr-2.m test/test_error.m test/test_eval-catch.m test/test_eval.m test/test_io.m test/test_linalg.m test/test_prefer.m test/test_string.m test/test_system.m
diffstat 213 files changed, 477 insertions(+), 478 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog.1	Mon Apr 24 17:45:31 2006 +0000
+++ b/ChangeLog.1	Mon Apr 24 19:13:11 2006 +0000
@@ -2531,7 +2531,7 @@
 	scripts/poly-amr.m, scripts/roots-tuwien.m, scripts/conv-tuwien.m,
 	scripts/deconv-tuwien.m, scripts/poly-tuwien.m:
 	New files.
-	XXX FIXME XXX -- For each of these functions, either one of the
+	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.
 
@@ -9094,7 +9094,7 @@
 	* 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
-	XXX FIXME XXX comment.  There are about 35-40 things left to fix
+	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)
--- a/aclocal.m4	Mon Apr 24 17:45:31 2006 +0000
+++ b/aclocal.m4	Mon Apr 24 19:13:11 2006 +0000
@@ -590,7 +590,7 @@
       cat conftest.$ac_ext >&AS_MESSAGE_LOG_FD
     fi
     AC_LANG_POP(C++)
-### XXX FIXME XXX -- Ignore test result on Windows.  Yes it prepends
+### FIXME -- Ignore test result on Windows.  Yes it prepends
 ### underscore, but LoadLibrary ignores it automatically.  The
 ### correct test is to build the shared library then try to grab the
 ### symbol from it with and without underscore.
@@ -598,7 +598,7 @@
       *-*-cygwin* | *-*-mingw*)
         octave_cv_cxx_prepends_underscore=no
       ;;
-### XXX FIXME XXX -- Ignore test result on OS X.  Yes it prepends
+### FIXME -- Ignore test result on OS X.  Yes it prepends
 ### underscore, but also messes with the name so test fails (incorrectly).
       *-*-darwin*)
         octave_cv_cxx_prepends_underscore=yes
--- a/configure.in	Mon Apr 24 17:45:31 2006 +0000
+++ b/configure.in	Mon Apr 24 19:13:11 2006 +0000
@@ -29,7 +29,7 @@
 EXTERN_CXXFLAGS="$CXXFLAGS"
 
 AC_INIT
-AC_REVISION($Revision: 1.507 $)
+AC_REVISION($Revision: 1.508 $)
 AC_PREREQ(2.57)
 AC_CONFIG_SRCDIR([src/octave.cc])
 AC_CONFIG_HEADER(config.h)
@@ -665,7 +665,7 @@
 elif $have_f2c; then
   AC_DEFINE(HAVE_F2C, 1, [Define if we are using f2c.])
 
-### XXX FIMXE XXX -- these shouldn't be fixed names, eh?
+### FIXME -- these shouldn't be fixed names, eh?
 
   oct_conflib=libconflib.a
   oct_obj_ext=o
--- a/doc/interpreter/Makefile.in	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/Makefile.in	Mon Apr 24 19:13:11 2006 +0000
@@ -45,7 +45,7 @@
 MAN_BASE := mkoctfile octave octave-bug octave-config
 MAN_SRC := $(addsuffix .1, $(MAN_BASE))
 
-# XXX FIXME XXX -- need to include generated figures here...
+# FIXME -- need to include generated figures here...
 DISTFILES = Makefile.in dir munge-texi.cc $(MAN_SRC) \
   $(SOURCES) $(TEXINFO) $(FORMATTED)
 
--- a/doc/interpreter/basics.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/basics.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -579,7 +579,7 @@
 @node Customizing readline
 @subsection Customizing @code{readline}
 
-@c XXX FIXME XXX -- need a brief description of the ~/.inputrc file here.
+@c FIXME -- need a brief description of the ~/.inputrc file here.
 
 @DOCSTRING(read_readline_init_file)
 
--- a/doc/interpreter/func.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/func.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -435,7 +435,7 @@
 @code{"system"} gives the default behavior.  If you set it to anything
 else, Octave will check the time stamps on all function files.
 
-@c XXX FIXME XXX -- note about time stamps on files in NFS environments?
+@c FIXME -- note about time stamps on files in NFS environments?
 
 @DOCSTRING(DEFAULT_LOADPATH)
 
@@ -739,7 +739,7 @@
 
 @DOCSTRING(warn_reload_forces_clear)
 
-@c XXX FIXME XXX -- is there a better place for this?
+@c FIXME -- is there a better place for this?
 
 @DOCSTRING(variables_can_hide_functions)
 
--- a/doc/interpreter/intro.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/intro.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -22,9 +22,9 @@
 
 This document corresponds to Octave version @value{VERSION}.
 
-@c XXX FIXME XXX -- add explanation about how and why Octave was written.
+@c FIXME -- add explanation about how and why Octave was written.
 @c
-@c XXX FIXME XXX -- add a sentence or two explaining that we could
+@c FIXME -- add a sentence or two explaining that we could
 @c                  always use more funding.
 
 @menu
--- a/doc/interpreter/io.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/io.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -41,7 +41,7 @@
 
 @DOCSTRING(fflush)
 
-@c XXX FIXME XXX -- maybe this would be a good place to describe the
+@c FIXME -- maybe this would be a good place to describe the
 @c following message:
 @c
 @c warning: connection to external pager (pid = 9334) lost --
--- a/doc/interpreter/linalg.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/linalg.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -66,7 +66,7 @@
 
 @DOCSTRING(svd)
 
-@c XXX FIXME XXX -- should there be a new section here?
+@c FIXME -- should there be a new section here?
 
 @DOCSTRING(housh)
 
--- a/doc/interpreter/matrix.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/matrix.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -200,11 +200,11 @@
 
 @DOCSTRING(diag)
 
-@c XXX FIXME XXX -- is this really worth documenting?
+@c FIXME -- is this really worth documenting?
 @c
 @c DOCSTRING(warn_imag_to_real)
 @c 
-@c XXX FIXME XXX -- this is here because it is used by @code{ones},
+@c FIXME -- this is here because it is used by @code{ones},
 @c @code{zeros}, @code{rand}, etc.
 
 The functions @code{linspace} and @code{logspace} make it very easy to
--- a/doc/interpreter/plot.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/plot.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -127,7 +127,7 @@
 @DOCSTRING(figure)
 
 @c @node Exporting Plots
-@c XXX FIXME XXX -- add info about getting paper copies of plots.
+@c FIXME -- add info about getting paper copies of plots.
 
 @node Low-Level plotting commands
 @section Low-Level plotting commands
@@ -324,7 +324,7 @@
 Note that NaN values in the plot data are automatically omitted, and
 Inf values are converted to a very large value before calling gnuplot.
 
-@c XXX FIXME XXX -- add info about what to do to get plots on remote X
+@c FIXME -- add info about what to do to get plots on remote X
 @c terminals.  People often forget how to properly set DISPLAY and run
 @c xhost.
 
--- a/doc/interpreter/signal.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/signal.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -37,7 +37,7 @@
 
 @DOCSTRING(unwrap)
 
-@c XXX FIXME XXX -- someone needs to organize these...
+@c FIXME -- someone needs to organize these...
 
 @DOCSTRING(arch_fit)
 
--- a/doc/interpreter/stats.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/stats.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -35,7 +35,7 @@
 
 @DOCSTRING(skewness)
 
-@c XXX FIXME XXX -- these need to be organized.
+@c FIXME -- these need to be organized.
 
 @DOCSTRING(values)
 
--- a/doc/interpreter/strings.txi	Mon Apr 24 17:45:31 2006 +0000
+++ b/doc/interpreter/strings.txi	Mon Apr 24 19:13:11 2006 +0000
@@ -28,7 +28,7 @@
 (@pxref{Arithmetic Ops}) but double-quote marks have no other purpose in
 Octave, it is best to use double-quote marks to denote strings.
 
-@c XXX FIXME XXX -- this is probably pretty confusing.
+@c FIXME -- this is probably pretty confusing.
 
 @cindex escape sequence notation
 Some characters cannot be included literally in a string constant.  You
--- a/libcruft/Makefile.in	Mon Apr 24 17:45:31 2006 +0000
+++ b/libcruft/Makefile.in	Mon Apr 24 19:13:11 2006 +0000
@@ -51,7 +51,7 @@
 	$(MAKE) -C $@ all
 .PHONY: $(SUBDIRS)
 
-# XXX FIXME XXX -- this should build the shared library directly from
+# FIXME -- this should build the shared library directly from
 # a normal archive file (created from PIC code, though).
 
 MISC_OBJ := misc/machar.o misc/f77-extern.o \
--- a/libcruft/Makerules.in	Mon Apr 24 17:45:31 2006 +0000
+++ b/libcruft/Makerules.in	Mon Apr 24 19:13:11 2006 +0000
@@ -2,7 +2,7 @@
 #
 # Common rules for octave's libcruft directories.
 #
-# XXX FIXME XXX -- assumes that the libcruft directory tree is only
+# FIXME -- assumes that the libcruft directory tree is only
 # one level deep.
 #
 # John W. Eaton
--- a/libcruft/misc/cquit.c	Mon Apr 24 17:45:31 2006 +0000
+++ b/libcruft/misc/cquit.c	Mon Apr 24 19:13:11 2006 +0000
@@ -46,7 +46,7 @@
 
 #if defined (__WIN32__) && ! defined (_POSIX_VERSION)
 
-/* XXX FIXME XXX -- eventually remove the debugging */
+/* FIXME -- eventually remove the debugging */
 #if defined (DEBUG)
 
 #define PRINT_CURRENT_THREAD() printf ("%lx: ", GetCurrentThreadId ())
--- a/libcruft/misc/f77-fcn.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/libcruft/misc/f77-fcn.h	Mon Apr 24 19:13:11 2006 +0000
@@ -101,7 +101,7 @@
 #define F77_RET_T int
 #define F77_RETURN(retval) return retval;
 
-/* XXX FIXME XXX -- these should work for SV1 or Y-MP systems but will
+/* FIXME -- these should work for SV1 or Y-MP systems but will
    need to be changed for others.  */
 
 typedef union
--- a/libcruft/misc/machar.c	Mon Apr 24 17:45:31 2006 +0000
+++ b/libcruft/misc/machar.c	Mon Apr 24 19:13:11 2006 +0000
@@ -374,7 +374,7 @@
 {
 #if defined (_CRAY)
 
-  // XXX FIXME XXX -- make machar work for the Cray too.
+  // FIXME -- make machar work for the Cray too.
 
   int ibeta = FLT_RADIX;
   *xmin = DBL_MIN;
--- a/liboctave/Array-util.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Array-util.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -376,7 +376,7 @@
   for (octave_idx_type i = 0; i < idx; i++)
     increment_index (retval, dims);
 
-  // XXX FIXME XXX -- the solution using increment_index is not
+  // FIXME -- the solution using increment_index is not
   // efficient.
 
 #if 0
--- a/liboctave/Array.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Array.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -110,7 +110,7 @@
 	    }
 	}
 
-      // XXX FIXME XXX -- it would be better if we did not have to do
+      // FIXME -- it would be better if we did not have to do
       // this, so we could share the data while still having different
       // dimension vectors.
 
@@ -129,7 +129,7 @@
 octave_idx_type
 Array<T>::get_size (octave_idx_type r, octave_idx_type c)
 {
-  // XXX KLUGE XXX
+  // KLUGE
 
   // If an allocation of an array with r * c elements of type T
   // would cause an overflow in the allocator when computing the
@@ -169,7 +169,7 @@
 octave_idx_type
 Array<T>::get_size (octave_idx_type r, octave_idx_type c, octave_idx_type p)
 {
-  // XXX KLUGE XXX
+  // KLUGE
 
   // If an allocation of an array with r * c * p elements of type T
   // would cause an overflow in the allocator when computing the
@@ -215,7 +215,7 @@
 octave_idx_type
 Array<T>::get_size (const dim_vector& ra_idx)
 {
-  // XXX KLUGE XXX
+  // KLUGE
 
   // If an allocation of an array with r * c elements of type T
   // would cause an overflow in the allocator when computing the
@@ -491,7 +491,7 @@
 
   int nd = dv.length ();
 
-  // XXX FIXME XXX -- it would be nice to have a sort method in the
+  // FIXME -- it would be nice to have a sort method in the
   // Array class that also returns the sort indices.
 
   if (inv)
@@ -918,7 +918,7 @@
 	    for (octave_idx_type i = 0; i < min_r; i++)
 	      xelem (i, j, k) = old_data[old_d1*(old_d2*k+j)+i];
 
-      // XXX FIXME XXX -- if the copy constructor is expensive, this
+      // FIXME -- if the copy constructor is expensive, this
       // may win.  Otherwise, it may make more sense to just copy the
       // value everywhere when making the new ArrayRep.
 
@@ -2450,7 +2450,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- this is a mess.
+// FIXME -- this is a mess.
 
 template <class LT, class RT>
 int
@@ -2613,7 +2613,7 @@
       switch (dv_tmp.length ())
 	{
 	case 1:
-	  // XXX FIXME XXX -- this case should be unnecessary, because
+	  // FIXME -- this case should be unnecessary, because
 	  // squeeze should always return an object with 2 dimensions.
 	  if (rhs_nr == 1)
 	    rhs_nc = dv_tmp.elem (0);
--- a/liboctave/Array.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Array.h	Mon Apr 24 19:13:11 2006 +0000
@@ -302,7 +302,7 @@
   T xelem (const Array<int>& ra_idx) const
     { return xelem (compute_index (ra_idx)); }
 
-  // XXX FIXME XXX -- would be nice to fix this so that we don't
+  // FIXME -- would be nice to fix this so that we don't
   // unnecessarily force a copy, but that is not so easy, and I see no
   // clean way to do it.
 
--- a/liboctave/CMatrix.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/CMatrix.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -30,7 +30,7 @@
 
 #include <iostream>
 
-// XXX FIXME XXX
+// FIXME
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
 #endif
@@ -201,7 +201,7 @@
     elem (i, i) = a.elem (i, i);
 }
 
-// XXX FIXME XXX -- could we use a templated mixed-type copy function
+// FIXME -- could we use a templated mixed-type copy function
 // here?
 
 ComplexMatrix::ComplexMatrix (const boolMatrix& a)
@@ -2067,7 +2067,7 @@
   Array<double> dpermute (nc);
   Array<double> dscale (nc);
 
-  // XXX FIXME XXX -- should pass job as a parameter in expm
+  // FIXME -- should pass job as a parameter in expm
 
   // Permute first
   char job = 'P';
@@ -2581,7 +2581,7 @@
   return false;
 }
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 boolMatrix
@@ -3100,7 +3100,7 @@
 {
   ComplexMatrix retval;
 
-  // XXX FIXME XXX -- need to check that a, b, and c are all the same
+  // FIXME -- need to check that a, b, and c are all the same
   // size.
 
   // Compute Schur decompositions
@@ -3142,7 +3142,7 @@
     (*current_liboctave_error_handler) ("unrecoverable error in ztrsyl");
   else
     {
-      // XXX FIXME XXX -- check info?
+      // FIXME -- check info?
 
       retval = -ua * cx * ub.hermitian ();
     }
@@ -3205,7 +3205,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- it would be nice to share code among the min/max
+// FIXME -- it would be nice to share code among the min/max
 // functions below.
 
 #define EMPTY_RETURN_CHECK(T) \
--- a/liboctave/CNDArray.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/CNDArray.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -494,7 +494,7 @@
   return b;
 }
 
-// XXX FIXME XXX -- this is not quite the right thing.
+// FIXME -- this is not quite the right thing.
 
 bool
 ComplexNDArray::any_element_is_inf_or_nan (void) const
@@ -1026,7 +1026,7 @@
   return is;
 }
 
-// XXX FIXME XXX -- it would be nice to share code among the min/max
+// FIXME -- it would be nice to share code among the min/max
 // functions below.
 
 #define EMPTY_RETURN_CHECK(T) \
--- a/liboctave/CNDArray.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/CNDArray.h	Mon Apr 24 19:13:11 2006 +0000
@@ -58,7 +58,7 @@
 
   boolNDArray operator ! (void) const;
 
-  // XXX FIXME XXX -- this is not quite the right thing.
+  // FIXME -- this is not quite the right thing.
 
   bool any_element_is_inf_or_nan (void) const;
   bool all_elements_are_real (void) const;
--- a/liboctave/CSparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/CSparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -7555,7 +7555,7 @@
   return false;
 }
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 SparseBoolMatrix
@@ -7840,7 +7840,7 @@
   SPARSE_FULL_MUL (ComplexMatrix, Complex, Complex (0.,0.));
 }
 
-// XXX FIXME XXX -- it would be nice to share code among the min/max
+// FIXME -- it would be nice to share code among the min/max
 // functions below.
 
 #define EMPTY_RETURN_CHECK(T) \
--- a/liboctave/CmplxDET.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/CmplxDET.h	Mon Apr 24 19:13:11 2006 +0000
@@ -28,7 +28,7 @@
 
 #include "oct-cmplx.h"
 
-// XXX FIXME XXX -- we could use templates here; compare with dbleDET.h
+// FIXME -- we could use templates here; compare with dbleDET.h
 
 class
 ComplexDET
--- a/liboctave/DASPK.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/DASPK.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -124,7 +124,7 @@
 {
   BEGIN_INTERRUPT_WITH_EXCEPTIONS;
 
-  // XXX FIXME XXX -- would be nice to avoid copying the data.
+  // FIXME -- would be nice to avoid copying the data.
 
   ColumnVector tmp_state (nn);
   ColumnVector tmp_deriv (nn);
@@ -149,7 +149,7 @@
 ColumnVector
 DASPK::do_integrate (double tout)
 {
-  // XXX FIXME XXX -- should handle all this option stuff just once
+  // FIXME -- should handle all this option stuff just once
   // for each new problem.
 
   ColumnVector retval;
@@ -348,7 +348,7 @@
 	{
 	  if (ccic == 1)
 	    {
-	      // XXX FIXME XXX -- this code is duplicated below.
+	      // FIXME -- this code is duplicated below.
 
 	      Array<octave_idx_type> av = algebraic_variables ();
 
@@ -388,7 +388,7 @@
 	{
 	  info(15) = 1;
 
-	  // XXX FIXME XXX -- this code is duplicated above.
+	  // FIXME -- this code is duplicated above.
 
 	  Array<octave_idx_type> av = algebraic_variables ();
 
--- a/liboctave/DASRT.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/DASRT.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -97,7 +97,7 @@
 {
   BEGIN_INTERRUPT_WITH_EXCEPTIONS;
 
-  // XXX FIXME XXX -- would be nice to avoid copying the data.
+  // FIXME -- would be nice to avoid copying the data.
 
   ColumnVector tmp_state (nn);
   ColumnVector tmp_deriv (nn);
--- a/liboctave/DASSL.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/DASSL.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -63,7 +63,7 @@
 {
   BEGIN_INTERRUPT_WITH_EXCEPTIONS;
 
-  // XXX FIXME XXX -- would be nice to avoid copying the data.
+  // FIXME -- would be nice to avoid copying the data.
 
   ColumnVector tmp_deriv (nn);
   ColumnVector tmp_state (nn);
@@ -99,7 +99,7 @@
 {
   BEGIN_INTERRUPT_WITH_EXCEPTIONS;
 
-  // XXX FIXME XXX -- would be nice to avoid copying the data.
+  // FIXME -- would be nice to avoid copying the data.
 
   ColumnVector tmp_state (nn);
   ColumnVector tmp_deriv (nn);
--- a/liboctave/DiagArray2.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/DiagArray2.h	Mon Apr 24 19:13:11 2006 +0000
@@ -90,7 +90,7 @@
 
   private:
 
-    // XXX FIXME XXX -- this is declared private to keep the user from
+    // FIXME -- this is declared private to keep the user from
     // taking the address of a Proxy.  Maybe it should be implemented
     // by means of a companion function in the DiagArray2 class.
 
--- a/liboctave/Quad.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Quad.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -33,7 +33,7 @@
 
 static integrand_fcn user_fcn;
 
-// XXX FIXME XXX -- would be nice to not have to have this global
+// FIXME -- would be nice to not have to have this global
 // variable.
 // Nonzero means an error occurred in the calculation of the integrand
 // function, and the user wants us to quit.
--- a/liboctave/Quad.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Quad.h	Mon Apr 24 19:13:11 2006 +0000
@@ -36,7 +36,7 @@
 
 #endif
 
-// XXX FIXME XXX -- would be nice to not have to have this global
+// FIXME -- would be nice to not have to have this global
 // variable.
 // Nonzero means an error occurred in the calculation of the integrand
 // function, and the user wants us to quit.
--- a/liboctave/Sparse-op-defs.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Sparse-op-defs.h	Mon Apr 24 19:13:11 2006 +0000
@@ -616,7 +616,7 @@
     else \
       { \
  \
-        /* XXX FIXME XXX Kludge... Always double/Complex, so Complex () */ \
+        /* FIXME Kludge... Always double/Complex, so Complex () */ \
         r = R (m1_nr, m1_nc, (Complex () OP Complex ())); \
         \
         for (octave_idx_type i = 0 ; i < m1_nc ; i++) \
@@ -666,7 +666,7 @@
 
 // Note that SM ./ SM needs to take into account the NaN and Inf values
 // implied by the division by zero.
-// XXX FIXME XXX Are the NaNs double(NaN) or Complex(NaN,Nan) in the complex
+// FIXME Are the NaNs double(NaN) or Complex(NaN,Nan) in the complex
 // case?
 #define SPARSE_SMSM_BIN_OPS(R1, R2, M1, M2)  \
   SPARSE_SMSM_BIN_OP_1 (R1, operator +,  +, M1, M2) \
@@ -893,7 +893,7 @@
     return r; \
   }
 
-// XXX FIXME XXX Pass a specific ZERO value
+// FIXME Pass a specific ZERO value
 #define SPARSE_MSM_BIN_OPS(R1, R2, M1, M2) \
   SPARSE_MSM_BIN_OP_1 (R1, operator +,  +, M1, M2) \
   SPARSE_MSM_BIN_OP_1 (R1, operator -,  -, M1, M2) \
@@ -1119,7 +1119,7 @@
     return r; \
   }
 
-// XXX FIXME XXX Pass a specific ZERO value
+// FIXME Pass a specific ZERO value
 #define SPARSE_SMM_BIN_OPS(R1, R2, M1, M2) \
   SPARSE_SMM_BIN_OP_1 (R1, operator +,  +, M1, M2) \
   SPARSE_SMM_BIN_OP_1 (R1, operator -,  -, M1, M2) \
--- a/liboctave/Sparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Sparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -1997,7 +1997,7 @@
   return index (ra_idx (0), ra_idx (1), resize_ok);
 }
 
-// XXX FIXME XXX
+// FIXME
 // Unfortunately numel can overflow for very large but very sparse matrices.
 // For now just flag an error when this happens.
 template <class LT, class RT>
--- a/liboctave/Sparse.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/Sparse.h	Mon Apr 24 19:13:11 2006 +0000
@@ -313,7 +313,7 @@
   T xelem (const Array<octave_idx_type>& ra_idx) const
     { return xelem (compute_index (ra_idx)); }
 
-  // XXX FIXME XXX -- would be nice to fix this so that we don't
+  // FIXME -- would be nice to fix this so that we don't
   // unnecessarily force a copy, but that is not so easy, and I see no
   // clean way to do it.
 
--- a/liboctave/SparseCmplxQR.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/SparseCmplxQR.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -79,7 +79,7 @@
 {
 #ifdef HAVE_CXSPARSE
   // Drop zeros from V and sort
-  // XXX FIXME XXX Is the double transpose to sort necessary?
+  // FIXME Is the double transpose to sort necessary?
   BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE;
   CXSPARSE_ZNAME (_dropzeros) (N->L);
   CXSPARSE_ZNAME () *D = CXSPARSE_ZNAME (_transpose) (N->L, 1);
@@ -135,7 +135,7 @@
 {
 #ifdef HAVE_CXSPARSE
   // Drop zeros from R and sort
-  // XXX FIXME XXX Is the double transpose to sort necessary?
+  // FIXME Is the double transpose to sort necessary?
   BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE;
   CXSPARSE_ZNAME (_dropzeros) (N->U);
   CXSPARSE_ZNAME () *D = CXSPARSE_ZNAME (_transpose) (N->U, 1);
--- a/liboctave/SparseQR.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/SparseQR.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -68,7 +68,7 @@
 {
 #ifdef HAVE_CXSPARSE
   // Drop zeros from V and sort
-  // XXX FIXME XXX Is the double transpose to sort necessary?
+  // FIXME Is the double transpose to sort necessary?
   BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE;
   CXSPARSE_DNAME (_dropzeros) (N->L);
   CXSPARSE_DNAME () *D = CXSPARSE_DNAME (_transpose) (N->L, 1);
@@ -124,7 +124,7 @@
 {
 #ifdef HAVE_CXSPARSE
   // Drop zeros from R and sort
-  // XXX FIXME XXX Is the double transpose to sort necessary?
+  // FIXME Is the double transpose to sort necessary?
   BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE;
   CXSPARSE_DNAME (_dropzeros) (N->U);
   CXSPARSE_DNAME () *D = CXSPARSE_DNAME (_transpose) (N->U, 1);
--- a/liboctave/SparseType.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/SparseType.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -31,7 +31,7 @@
 #include "CSparse.h"
 #include "oct-spparms.h"
 
-// XXX FIXME XXX There is a large code duplication here
+// FIXME There is a large code duplication here
 
 SparseType::SparseType (void) : typ (SparseType::Unknown), nperm (0)
 {
@@ -187,7 +187,7 @@
 	  // Search for a permuted triangular matrix, and test if
 	  // permutation is singular
 
-	  // XXX FIXME XXX
+	  // FIXME
 	  // Perhaps this should be based on a dmperm algorithm
 	  bool found = false;
 
@@ -291,7 +291,7 @@
 	    }
 	}
 
-      // XXX FIXME XXX
+      // FIXME
       // Disable lower under-determined and upper over-determined problems
       // as being detected, and force to treat as singular. As this seems
       // to cause issues
@@ -512,7 +512,7 @@
 	  // Search for a permuted triangular matrix, and test if
 	  // permutation is singular
 
-	  // XXX FIXME XXX
+	  // FIXME
 	  // Perhaps this should be based on a dmperm algorithm
 	  bool found = false;
 
@@ -616,7 +616,7 @@
 	    }
 	}
 
-      // XXX FIXME XXX
+      // FIXME
       // Disable lower under-determined and upper over-determined problems
       // as being detected, and force to treat as singular. As this seems
       // to cause issues
--- a/liboctave/boolMatrix.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/boolMatrix.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -77,7 +77,7 @@
 
 // other operations
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 boolMatrix
--- a/liboctave/boolNDArray.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/boolNDArray.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -44,7 +44,7 @@
   return b;
 }
 
-// XXX FIXME XXX -- this is not quite the right thing.
+// FIXME -- this is not quite the right thing.
 
 boolNDArray
 boolNDArray::all (int dim) const
--- a/liboctave/boolNDArray.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/boolNDArray.h	Mon Apr 24 19:13:11 2006 +0000
@@ -62,7 +62,7 @@
 
   boolNDArray operator ! (void) const;
 
-  // XXX FIXME XXX -- this is not quite the right thing.
+  // FIXME -- this is not quite the right thing.
 
   boolNDArray all (int dim = -1) const;
   boolNDArray any (int dim = -1) const;
--- a/liboctave/boolSparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/boolSparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -116,7 +116,7 @@
 
 // other operations
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 SparseBoolMatrix
--- a/liboctave/byte-swap.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/byte-swap.h	Mon Apr 24 19:13:11 2006 +0000
@@ -24,7 +24,7 @@
 #if !defined (octave_byte_swap_h)
 #define octave_byte_swap_h 1
 
-// XXX FIXME XXX -- not sure these volatile qualifiers are really
+// FIXME -- not sure these volatile qualifiers are really
 // needed or appropriate here.
 
 static inline void
--- a/liboctave/chMatrix.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/chMatrix.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -189,7 +189,7 @@
   return result;
 }
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 boolMatrix
--- a/liboctave/chNDArray.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/chNDArray.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -32,7 +32,7 @@
 #include "lo-ieee.h"
 #include "lo-mappers.h"
 
-// XXX FIXME XXX -- this is not quite the right thing.
+// FIXME -- this is not quite the right thing.
 
 boolNDArray
 charNDArray::all (int dim) const
@@ -78,7 +78,7 @@
 	  octave_idx_type ival = NINTbig (d);
 
 	  if (ival < 0 || ival > UCHAR_MAX)
-	    // XXX FIXME XXX -- is there something
+	    // FIXME -- is there something
 	    // better we could do? Should we warn the user?
 	    ival = 0;
 
--- a/liboctave/chNDArray.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/chNDArray.h	Mon Apr 24 19:13:11 2006 +0000
@@ -61,7 +61,7 @@
       return *this;
     }
 
-  // XXX FIXME XXX -- this is not quite the right thing.
+  // FIXME -- this is not quite the right thing.
 
   boolNDArray all (int dim = -1) const;
   boolNDArray any (int dim = -1) const;
--- a/liboctave/cmd-edit.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/cmd-edit.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -152,7 +152,7 @@
   : command_editor (), previous_startup_hook (0),
     previous_event_hook (0), completion_function (0)
 {
-  // XXX FIXME XXX -- need interface to rl_add_defun, rl_initialize, and
+  // FIXME -- need interface to rl_add_defun, rl_initialize, and
   // a function to set rl_terminal_name
 
   std::string term = octave_env::getenv ("TERM");
@@ -569,20 +569,20 @@
 string_vector
 default_command_editor::do_generate_filename_completions (const std::string&)
 {
-  // XXX FIXME XXX
+  // FIXME
   return string_vector ();
 }
 
 void
 default_command_editor::do_insert_text (const std::string&)
 {
-  // XXX FIXME XXX
+  // FIXME
 }
 
 void
 default_command_editor::do_newline (void)
 {
-  // XXX FIXME XXX
+  // FIXME
 }
 
 bool
--- a/liboctave/cmd-hist.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/cmd-hist.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -205,7 +205,7 @@
 
   mark = 0;
 
-  // XXX FIXME XXX -- for operate_and_get_next.
+  // FIXME -- for operate_and_get_next.
   command_editor::restore_startup_hook ();
 
   return 0;
--- a/liboctave/dMatrix.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/dMatrix.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -166,7 +166,7 @@
     elem (i, i) = a.elem (i, i);
 }
 
-// XXX FIXME XXX -- could we use a templated mixed-type copy function
+// FIXME -- could we use a templated mixed-type copy function
 // here?
 
 Matrix::Matrix (const boolMatrix& a)
@@ -2086,7 +2086,7 @@
   return false;
 }
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 boolMatrix
@@ -2488,7 +2488,7 @@
 {
   Matrix retval;
 
-  // XXX FIXME XXX -- need to check that a, b, and c are all the same
+  // FIXME -- need to check that a, b, and c are all the same
   // size.
 
   // Compute Schur decompositions.
@@ -2531,7 +2531,7 @@
     (*current_liboctave_error_handler) ("unrecoverable error in dtrsyl");
   else
     {
-      // XXX FIXME XXX -- check info?
+      // FIXME -- check info?
   
       retval = -ua*cx*ub.transpose ();
     }
@@ -2582,7 +2582,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- it would be nice to share code among the min/max
+// FIXME -- it would be nice to share code among the min/max
 // functions below.
 
 #define EMPTY_RETURN_CHECK(T) \
--- a/liboctave/dNDArray.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/dNDArray.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -597,7 +597,7 @@
   return false;
 }
 
-// XXX FIXME XXX -- this is not quite the right thing.
+// FIXME -- this is not quite the right thing.
 
 boolNDArray
 NDArray::all (int dim) const
@@ -831,7 +831,7 @@
 	  octave_idx_type ival = NINTbig (d);
 
 	  if (ival < 0 || ival > UCHAR_MAX)
-	    // XXX FIXME XXX -- is there something
+	    // FIXME -- is there something
 	    // better we could do? Should we warn the user?
 	    ival = 0;
 
@@ -974,7 +974,7 @@
   return is;
 }
 
-// XXX FIXME XXX -- it would be nice to share code among the min/max
+// FIXME -- it would be nice to share code among the min/max
 // functions below.
 
 #define EMPTY_RETURN_CHECK(T) \
--- a/liboctave/dNDArray.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/dNDArray.h	Mon Apr 24 19:13:11 2006 +0000
@@ -68,7 +68,7 @@
   bool all_integers (double& max_val, double& min_val) const;
   bool too_large_for_float (void) const;
 
-  // XXX FIXME XXX -- this is not quite the right thing.
+  // FIXME -- this is not quite the right thing.
 
   boolNDArray all (int dim = -1) const;
   boolNDArray any (int dim = -1) const;
--- a/liboctave/dSparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/dSparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -7620,7 +7620,7 @@
   return r;
 }
 
-// XXX FIXME XXX Do these really belong here?  Maybe they should be
+// FIXME Do these really belong here?  Maybe they should be
 // in a base class?
 
 SparseBoolMatrix
@@ -7921,7 +7921,7 @@
   SPARSE_FULL_MUL (Matrix, double, 0.);
 }
 
-// XXX FIXME XXX -- it would be nice to share code among the min/max
+// FIXME -- it would be nice to share code among the min/max
 // functions below.
 
 #define EMPTY_RETURN_CHECK(T) \
--- a/liboctave/data-conv.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/data-conv.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -519,9 +519,9 @@
 // Currently, we only handle conversions for the IEEE types.  To fix
 // that, make more of the following routines work.
 
-// XXX FIXME XXX -- assumes sizeof (Complex) == 8
-// XXX FIXME XXX -- assumes sizeof (double) == 8
-// XXX FIXME XXX -- assumes sizeof (float) == 4
+// FIXME -- assumes sizeof (Complex) == 8
+// FIXME -- assumes sizeof (double) == 8
+// FIXME -- assumes sizeof (float) == 4
 
 static void
 IEEE_big_double_to_IEEE_little_double (void *d, int len)
--- a/liboctave/dbleDET.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/dbleDET.h	Mon Apr 24 19:13:11 2006 +0000
@@ -26,7 +26,7 @@
 
 #include <iostream>
 
-// XXX FIXME XXX -- we could use templates here; compare with CmplxDET.h
+// FIXME -- we could use templates here; compare with CmplxDET.h
 
 class
 DET
--- a/liboctave/file-ops.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/file-ops.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -459,7 +459,7 @@
 
 #else
 
-  // XXX FIXME XXX -- provide replacement here...
+  // FIXME -- provide replacement here...
   retval = name;
 
 #endif
--- a/liboctave/file-stat.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/file-stat.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -46,7 +46,7 @@
 }
 #endif
 
-// XXX FIXME XXX -- the is_* and mode_as_string functions are only valid
+// FIXME -- the is_* and mode_as_string functions are only valid
 // for initialized objects.  If called for an object that is not
 // initialized, they should throw an exception.
 
--- a/liboctave/glob-match.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/glob-match.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -106,7 +106,7 @@
 
 	      const char * const *matches = glob_info.gl_pathv;
 
-	      // XXX FIXME XXX -- we shouldn't have to check to see if
+	      // FIXME -- we shouldn't have to check to see if
 	      // a single match exists, but it seems that glob() won't
 	      // check for us unless the pattern contains globbing
 	      // characters.  Hmm.
--- a/liboctave/intNDArray.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/intNDArray.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -44,7 +44,7 @@
   return b;
 }
 
-// XXX FIXME XXX -- this is not quite the right thing.
+// FIXME -- this is not quite the right thing.
 
 template <class T>
 boolNDArray
--- a/liboctave/intNDArray.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/intNDArray.h	Mon Apr 24 19:13:11 2006 +0000
@@ -62,7 +62,7 @@
 
   boolNDArray operator ! (void) const;
 
-  // XXX FIXME XXX -- this is not quite the right thing.
+  // FIXME -- this is not quite the right thing.
 
   boolNDArray all (int dim = -1) const;
   boolNDArray any (int dim = -1) const;
--- a/liboctave/lo-ieee.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/lo-ieee.h	Mon Apr 24 19:13:11 2006 +0000
@@ -37,7 +37,7 @@
 /* Octave's idea of not a number.  */
 extern double octave_NaN;
 
-/* XXX FIXME XXX -- this code assumes that a double has twice the
+/* FIXME -- this code assumes that a double has twice the
    number of bits as an int */
 
 extern int lo_ieee_hw;
--- a/liboctave/lo-mappers.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/lo-mappers.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -134,7 +134,7 @@
 
 // (double, double) -> double mappers.
 
-// XXX FIXME XXX -- need to handle NA too?
+// FIXME -- need to handle NA too?
 
 double
 xmin (double x, double y)
@@ -286,7 +286,7 @@
 
 // (complex, complex) -> complex mappers.
 
-// XXX FIXME XXX -- need to handle NA too?
+// FIXME -- need to handle NA too?
 
 Complex
 xmin (const Complex& x, const Complex& y)
--- a/liboctave/lo-specfun.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/lo-specfun.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -1234,7 +1234,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- there is still room for improvement here...
+// FIXME -- there is still room for improvement here...
 
 double
 gammainc (double x, double a, bool& err)
--- a/liboctave/lo-utils.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/lo-utils.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -48,7 +48,7 @@
 // this function.
 
 // Sometimes you need a large integer, but not always.
-// XXX FIXME-64 XXX -- INT_MAX and INT_MIN are probably not right here.
+// FIXME -- INT_MAX and INT_MIN are probably not right for 64-bits.
 
 octave_idx_type
 NINTbig (double x)
@@ -98,7 +98,7 @@
 // This function was adapted from xputenv from Karl Berry's kpathsearch
 // library.
 
-// XXX FIXME XXX -- make this do the right thing if we don't have a
+// FIXME -- make this do the right thing if we don't have a
 // SMART_PUTENV.
 
 void
--- a/liboctave/mach-info.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/mach-info.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -76,7 +76,7 @@
 {
 #if defined (CRAY)
 
-  // XXX FIXME XXX -- this should be determined automatically.
+  // FIXME -- this should be determined automatically.
 
   native_float_fmt = oct_mach_info::flt_fmt_cray;
 
--- a/liboctave/oct-alloc.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/oct-alloc.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -46,7 +46,7 @@
   return tmp;
 }
 
-// XXX FIXME XXX -- if we free the last item on the list, shouldn't we
+// FIXME -- if we free the last item on the list, shouldn't we
 // also free the underlying character array used for storage?
 
 void
--- a/liboctave/oct-env.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/oct-env.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -173,7 +173,7 @@
     ? instance->do_get_host_name () : std::string ();
 }
 
-// XXX FIXME XXX -- this leaves no way to distinguish between a
+// FIXME -- this leaves no way to distinguish between a
 // variable that is not set and one that is set to the empty string.
 // Is this a problem?
 
@@ -304,7 +304,7 @@
   if (! file_ops::is_dir_sep (current_dir[pos]))
     current_dir.append (file_ops::dir_sep_str);
 
-  // XXX FIXME XXX -- this is probably not correct for all systems.
+  // FIXME -- this is probably not correct for all systems.
 
   size_t i = 0;
   size_t slen = s.length ();
@@ -400,7 +400,7 @@
 std::string
 octave_env::do_get_user_name (void) const
 {
-  // XXX FIXME XXX -- is it possible for this to change while Octave
+  // FIXME -- is it possible for this to change while Octave
   // is running?
 
   if (user_name.empty ())
@@ -416,7 +416,7 @@
 std::string
 octave_env::do_get_host_name (void) const
 {
-  // XXX FIXME XXX -- is it possible for this to change while Octave
+  // FIXME -- is it possible for this to change while Octave
   // is running?
 
   if (host_name.empty ())
--- a/liboctave/oct-fftw.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/oct-fftw.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -43,7 +43,7 @@
 // wsidom that is available, either in a FFTW3 system wide file or as
 // supplied by the user.
 
-// XXX FIXME XXX -- if we can ensure 16 byte alignment in Array<T>
+// FIXME -- if we can ensure 16 byte alignment in Array<T>
 // (<T> *data) the FFTW3 can use SIMD instructions for further
 // acceleration.
 
@@ -69,7 +69,7 @@
 
   int plan_flags;
 
-  // XXX FIXME XXX -- perhaps this should be split into two classes?
+  // FIXME -- perhaps this should be split into two classes?
 
   // Plan for fft and ifft of complex values
   fftw_plan plan[2];
--- a/liboctave/oct-group.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/oct-group.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -191,7 +191,7 @@
 
       gr_gid = gr->gr_gid;
 
-      // XXX FIXME XXX -- maybe there should be a string_vector
+      // FIXME -- maybe there should be a string_vector
       // constructor that takes a NULL terminated list of C
       // strings.
 
--- a/liboctave/oct-rl-edit.c	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/oct-rl-edit.c	Mon Apr 24 19:13:11 2006 +0000
@@ -76,7 +76,7 @@
 
    Instead, temporarily redefine the redisplay function to do nothing.
 
-   XXX FIXME XXX -- It would be safer to do this when protected from
+   FIXME -- It would be safer to do this when protected from
    interrupts... */
 
 static void
--- a/liboctave/oct-shlib.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/oct-shlib.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -616,7 +616,7 @@
 	  (*current_liboctave_error_handler)
 	    ("got NSObjectFileImageReturnCode %d", returnCode);
 
-	  // XXX FIXME XXX -- should use NSLinkEditError () to get
+	  // FIXME -- should use NSLinkEditError () to get
 	  // more info on what went wrong.
 	}
     }
--- a/liboctave/randmtzig.c	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/randmtzig.c	Mon Apr 24 19:13:11 2006 +0000
@@ -135,7 +135,7 @@
 
 #include "randmtzig.h"
    
-/* XXX FIXME XXX may want to suppress X86 if sizeof(long)>4 */
+/* FIXME may want to suppress X86 if sizeof(long)>4 */
 #if !defined(USE_X86_32)
 # if defined(i386) || defined(HAVE_X86_32)
 #  define USE_X86_32 1
--- a/liboctave/randpoisson.c	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/randpoisson.c	Mon Apr 24 19:13:11 2006 +0000
@@ -428,7 +428,7 @@
     /* numerical recipes */
     poisson_rejection(L, &ret, 1);
   } else if (INFINITE(L)) {
-    /* XXX FIXME XXX R uses NaN, but the normal approx. suggests that as
+    /* FIXME R uses NaN, but the normal approx. suggests that as
      * limit should be inf. Which is correct? */
     ret = NAN;
   } else {
--- a/liboctave/so-array.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/so-array.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -29,7 +29,7 @@
 
 #include "ArrayN.h"
 #include "Array-util.h"
-// XXX FIXME XXX -- we are including the MArray{,2,N}.h files just for
+// FIXME -- we are including the MArray{,2,N}.h files just for
 // their gripe_nonconformant function decls.
 #include "MArray.h"
 #include "MArray2.h"
--- a/liboctave/sparse-dmsolve.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/liboctave/sparse-dmsolve.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -420,7 +420,7 @@
 	}
       
       // Structurally non-singular blocks
-      // XXX FIXME XXX Should use fine Dulmange-Mendelsohn decomposition here.
+      // FIXME Should use fine Dulmange-Mendelsohn decomposition here.
       if (dm->rr [1] < dm->rr [2] && dm->cc [2] < dm->cc [3] && 
 	  !info && !error_state)
 	{
--- a/mk-opts.pl	Mon Apr 24 17:45:31 2006 +0000
+++ b/mk-opts.pl	Mon Apr 24 19:13:11 2006 +0000
@@ -592,7 +592,7 @@
 {
   local ($i);
 
-  ## XXX FIXME XXX -- determine the width of the table automatically.
+  ## FIXME -- determine the width of the table automatically.
 
   print "static void
 print_${class_name} (void)
--- a/scripts/audio/mu2lin.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/audio/mu2lin.m	Mon Apr 24 19:13:11 2006 +0000
@@ -33,7 +33,7 @@
 function y = mu2lin (x, bit)
 
   if (nargin == 1)
-    ## XXX COMPATIBILITY XXX: bps defaults to 8 for octave, 0 for Matlab
+    ## COMPATIBILITY -- bps defaults to 8 for octave, 0 for Matlab
     bit = 8;
   elseif (nargin == 2)
     if (bit != 0 && bit != 8 && bit != 16)
--- a/scripts/control/base/lsim.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/control/base/lsim.m	Mon Apr 24 19:13:11 2006 +0000
@@ -76,7 +76,7 @@
   for ii = 1:(n-1)
 
     ## check if step size changed
-    ## XXX FIXME XXX -- this is probably not the best test, but it is
+    ## FIXME -- this is probably not the best test, but it is
     ## better than a test for exact equality.
     if (abs (t(ii+1) - t(ii) - Ts) > 10 * eps)
       Ts = t(ii+1) - t(ii);
--- a/scripts/image/ind2rgb.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/image/ind2rgb.m	Mon Apr 24 19:13:11 2006 +0000
@@ -38,7 +38,7 @@
 
   [hi, wi] = size (X);
 
-  ## XXX FIXME XXX -- we should check size of X and map.
+  ## FIXME -- we should check size of X and map.
 
   R = reshape (map (X(:), 1), hi, wi);
   G = reshape (map (X(:), 2), hi, wi);
--- a/scripts/linear-algebra/cross.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/linear-algebra/cross.m	Mon Apr 24 19:13:11 2006 +0000
@@ -46,7 +46,7 @@
   endif
 
   if (ndims (x) < 3 && ndims (y) < 3 && nargin < 3)
-    ## XXX COMPATIBILITY XXX opposite behaviour for cross(row,col)
+    ## COMPATIBILITY -- opposite behaviour for cross(row,col)
     ## Swap x and y in the assignments below to get the matlab behaviour.
     ## Better yet, fix the calling code so that it uses conformant vectors.
     if (columns (x) == 1 && rows (y) == 1)
--- a/scripts/linear-algebra/krylov.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/linear-algebra/krylov.m	Mon Apr 24 19:13:11 2006 +0000
@@ -122,7 +122,7 @@
         nv = columns (V);
         if (jj != nv)
           [V(:,jj), V(:,nv)] = swap (V(:,jj), V(:,nv));
-	  ## XXX FIXME XXX -- H columns should be swapped too.  Not done
+	  ## FIXME -- H columns should be swapped too.  Not done
 	  ## since Block Hessenberg structure is lost anyway.
         endif
         V = V(:,1:(nv-1));
@@ -156,7 +156,7 @@
         # reduce V per the reflection
         V(idx,:) = V(idx,:) - av*hv*(hv' * V(idx,:));
         if(iter > 1)
-	  ## XXX FIXME XXX -- not done correctly for block case
+	  ## FIXME -- not done correctly for block case
           H(nu,nu-1) = V(pivot_vec(nu),jj);
         endif
 
--- a/scripts/miscellaneous/dir.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/miscellaneous/dir.m	Mon Apr 24 19:13:11 2006 +0000
@@ -45,7 +45,7 @@
 
 ## Author: jwe
 
-## XXX FIXME XXX -- this is quite slow for large directories, so perhaps
+## FIXME -- this is quite slow for large directories, so perhaps
 ## it should be converted to C++.
 
 function retval = dir (file)
--- a/scripts/miscellaneous/doc.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/miscellaneous/doc.m	Mon Apr 24 19:13:11 2006 +0000
@@ -38,7 +38,7 @@
   endif
 
   ## Get the directory where the function lives.
-  ## XXX FIXME XXX -- maybe we should have a better way of doing this.
+  ## FIXME -- maybe we should have a better way of doing this.
 
   x = exist (fname);
 
--- a/scripts/miscellaneous/dump_prefs.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/miscellaneous/dump_prefs.m	Mon Apr 24 19:13:11 2006 +0000
@@ -32,7 +32,7 @@
     file = stdout;
   endif
 
-  ## XXX FIXME XXX -- it would be nice to be able to get the list of
+  ## FIXME -- it would be nice to be able to get the list of
   ## built-in variables directly from Octave so that we wouldn't have to
   ## remember to update it each time the list of preference variables
   ## changes
--- a/scripts/miscellaneous/fileattrib.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/miscellaneous/fileattrib.m	Mon Apr 24 19:13:11 2006 +0000
@@ -101,7 +101,7 @@
 	r_s{i} = NaN;
 	r_h{i} = NaN;
 	r_d{i} = S_ISDIR (info.mode);
-	## XXX FIXME XXX -- maybe we should have S_IRUSR etc. masks?
+	## FIXME -- maybe we should have S_IRUSR etc. masks?
 	modestr = info.modestr;
 	r_u_r{i} = modestr(2) == "r";
 	r_u_w{i} = modestr(3) == "w";
--- a/scripts/path/setpath.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/path/setpath.m	Mon Apr 24 19:13:11 2006 +0000
@@ -29,7 +29,7 @@
     if (nargout > 0)
       opath = LOADPATH;
     endif
-    ## XXX FIXME XXX -- perhaps validate elements of npath to make sure
+    ## FIXME -- perhaps validate elements of npath to make sure
     ## they are existing directories?
     if (ischar (npath))
       LOADPATH = npath;
--- a/scripts/plot/__axis_label__.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/__axis_label__.m	Mon Apr 24 19:13:11 2006 +0000
@@ -42,7 +42,7 @@
     usage ("%s (text)", caller);
   endif
 
-  ## XXX FIXME XXX -- eventually, we will return a graphics handle.  For
+  ## FIXME -- eventually, we will return a graphics handle.  For
   ## now, return something, so that calls that expect a handle won't
   ## fail (at least immediately).
 
--- a/scripts/plot/axis.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/axis.m	Mon Apr 24 19:13:11 2006 +0000
@@ -149,7 +149,7 @@
       ## aspect ratio
     elseif (strcmp (ax, "image"))
       __gnuplot_raw__ ("set size ratio -1;\n"); 
-      __gnuplot_raw__ ("set autoscale;\n"); ## XXX FIXME XXX should be the same as "tight"
+      __gnuplot_raw__ ("set autoscale;\n"); ## FIXME should be the same as "tight"
     elseif (strcmp (ax, "equal"))
       __gnuplot_raw__ ("set size ratio -1;\n");
     elseif (strcmp (ax, "square"))
@@ -170,14 +170,14 @@
       __gnuplot_raw__ ("set xrange [] writeback;\n");
       __gnuplot_raw__ ("set yrange [] writeback;\n");
       __gnuplot_raw__ ("set zrange [] writeback;\n");
-      ## XXX FIXME XXX if writeback were set in plot, no need to replot here.
+      ## FIXME if writeback were set in plot, no need to replot here.
       ## No semicolon (see replot.m).
       replot ();
       __gnuplot_raw__ ("set noautoscale x;\n");
       __gnuplot_raw__ ("set noautoscale y;\n");
       __gnuplot_raw__ ("set noautoscale z;\n");
     elseif (strcmp (ax, "tight"))
-      ## XXX FIXME XXX if tight, plot must set ranges to limits of the
+      ## FIXME if tight, plot must set ranges to limits of the
       ## all the data on the current plot, even if from a previous call.
       ## Instead, just let gnuplot do as it likes.
       __gnuplot_raw__ ("set autoscale;\n");
--- a/scripts/plot/contour.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/contour.m	Mon Apr 24 19:13:11 2006 +0000
@@ -30,7 +30,7 @@
 
 function contour (x, y, z, n)
 
-  ## XXX FIXME XXX -- these plot states should really just be set
+  ## FIXME -- these plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/loglog.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/loglog.m	Mon Apr 24 19:13:11 2006 +0000
@@ -30,7 +30,7 @@
 
 function loglog (varargin)
 
-  ## XXX FIXME XXX -- these plot states should really just be set
+  ## FIXME -- these plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/mesh.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/mesh.m	Mon Apr 24 19:13:11 2006 +0000
@@ -32,7 +32,7 @@
 
 function mesh (x, y, z)
 
-  ## XXX FIXME XXX -- the plot states should really just be set
+  ## FIXME -- the plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/multiplot.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/multiplot.m	Mon Apr 24 19:13:11 2006 +0000
@@ -58,7 +58,7 @@
 
     oneplot ();
 
-    ## XXX FIXME XXX -- do we really need to reset these here?
+    ## FIXME -- do we really need to reset these here?
 
     __multiplot_xsize__ = 1;
     __multiplot_ysize__ = 1;
--- a/scripts/plot/plot.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/plot.m	Mon Apr 24 19:13:11 2006 +0000
@@ -170,7 +170,7 @@
 
 function plot (varargin)
 
-  ## XXX FIXME XXX -- these plot states should really just be set
+  ## FIXME -- these plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/polar.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/polar.m	Mon Apr 24 19:13:11 2006 +0000
@@ -31,7 +31,7 @@
 
 function polar (x1, x2, fmt)
 
-  ## XXX FIXME XXX -- these plot states should really just be set
+  ## FIXME -- these plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/print.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/print.m	Mon Apr 24 19:13:11 2006 +0000
@@ -304,7 +304,7 @@
     elseif (strcmp (dev, "png") || strcmp (dev, "pbm"))
       ## Portable network graphics, PBMplus
 
-      ## XXX FIXME XXX -- New PNG interface takes color as "xRRGGBB"
+      ## FIXME -- New PNG interface takes color as "xRRGGBB"
       ## where x is the literal character 'x' and 'RRGGBB' are the red,
       ## green and blue components in hex.  For now we just ignore it
       ## and use default.  The png terminal now is so rich with options,
@@ -348,7 +348,7 @@
     endif
   endif
 
-  ## XXX FIXME XXX -- This looks like a dirty, Unix-specific hack.
+  ## FIXME -- This looks like a dirty, Unix-specific hack.
   ## DAS
   if (doprint)
     system (sprintf ("lpr %s '%s'", printer, printname));
--- a/scripts/plot/semilogx.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/semilogx.m	Mon Apr 24 19:13:11 2006 +0000
@@ -30,7 +30,7 @@
 
 function semilogx (varargin)
 
-  ## XXX FIXME XXX -- these plot states should really just be set
+  ## FIXME -- these plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/semilogy.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/semilogy.m	Mon Apr 24 19:13:11 2006 +0000
@@ -30,7 +30,7 @@
 
 function semilogy (varargin)
 
-  ## XXX FIXME XXX -- these plot states should really just be set
+  ## FIXME -- these plot states should really just be set
   ## temporarily, probably inside an unwind_protect block, but there is
   ## no way to determine their current values.
 
--- a/scripts/plot/subplot.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/subplot.m	Mon Apr 24 19:13:11 2006 +0000
@@ -123,7 +123,7 @@
 
     oneplot ();
 
-    ## XXX FIXME XXX -- do we really need to reset these here?
+    ## FIXME -- do we really need to reset these here?
 
     __multiplot_xn__ = 1;
     __multiplot_yn__ = 1;
--- a/scripts/plot/title.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/title.m	Mon Apr 24 19:13:11 2006 +0000
@@ -42,7 +42,7 @@
     error ("title: text must be a string");
   endif
 
-  ## XXX FIXME XXX -- eventually, we will return a graphics handle.  For
+  ## FIXME -- eventually, we will return a graphics handle.  For
   ## now, return something, so that calls that expect a handle won't
   ## fail (at least immediately).
 
--- a/scripts/plot/xlabel.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/xlabel.m	Mon Apr 24 19:13:11 2006 +0000
@@ -32,7 +32,7 @@
 
 function h = xlabel (varargin)
 
-  ## XXX FIXME XXX -- eventually, we will return a graphics handle.  For
+  ## FIXME -- eventually, we will return a graphics handle.  For
   ## now, return something, so that calls that expect a handle won't
   ## fail (at least immediately).
 
--- a/scripts/plot/ylabel.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/ylabel.m	Mon Apr 24 19:13:11 2006 +0000
@@ -26,7 +26,7 @@
 
 function h = ylabel (varargin)
 
-  ## XXX FIXME XXX -- eventually, we will return a graphics handle.  For
+  ## FIXME -- eventually, we will return a graphics handle.  For
   ## now, return something, so that calls that expect a handle won't
   ## fail (at least immediately).
 
--- a/scripts/plot/zlabel.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/plot/zlabel.m	Mon Apr 24 19:13:11 2006 +0000
@@ -28,7 +28,7 @@
 
 function h = zlabel (varargin)
 
-  ## XXX FIXME XXX -- eventually, we will return a graphics handle.  For
+  ## FIXME -- eventually, we will return a graphics handle.  For
   ## now, return something, so that calls that expect a handle won't
   ## fail (at least immediately).
 
--- a/scripts/signal/freqz_plot.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/signal/freqz_plot.m	Mon Apr 24 19:13:11 2006 +0000
@@ -78,7 +78,7 @@
 
       ## Restore graph state.
 
-      ## XXX FIXME XXX -- if automatic_replot is non-zero, this will
+      ## FIXME -- if automatic_replot is non-zero, this will
       ## mess up the graph, however if we don't do it here then the user
       ## will have to do it themselves.
 
--- a/scripts/sparse/spstats.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/sparse/spstats.m	Mon Apr 24 19:13:11 2006 +0000
@@ -35,7 +35,7 @@
     mean = spsum(S) ./ count; 
   end
   if (nargout > 2) 
-    ## XXX FIXME XXX Variance with count = 0 or 1?
+    ## FIXME Variance with count = 0 or 1?
     diff = S - sparse (i, j, mean(j), n, m); 
     var = spsum (diff .* diff) ./ (count - 1);
   end
--- a/scripts/testfun/test.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/scripts/testfun/test.m	Mon Apr 24 19:13:11 2006 +0000
@@ -553,7 +553,7 @@
 %!demo  toeplitz ([1,2,3,4],[1,5,6])
 
 ### example from kron
-%!#error kron  # XXX FIXME XXX suppress these until we can handle output
+%!#error kron  # FIXME suppress these until we can handle output
 %!#error kron(1,2,3)
 %!test assert (isempty (kron ([], rand(3, 4))))
 %!test assert (isempty (kron (rand (3, 4), [])))
--- a/src/Cell.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/Cell.h	Mon Apr 24 19:13:11 2006 +0000
@@ -94,10 +94,10 @@
 
   Cell column (octave_idx_type i) const;
 
-  // XXX FIXME XXX
+  // FIXME
   boolMatrix all (int /* dim */ = 0) const { return boolMatrix (); }
 
-  // XXX FIXME XXX
+  // FIXME
   boolMatrix any (int /* dim */ = 0) const { return boolMatrix (); }
 
   Cell concat (const Cell& rb, const Array<octave_idx_type>& ra_idx);
@@ -105,7 +105,7 @@
   Cell& insert (const Cell& a, octave_idx_type r, octave_idx_type c);
   Cell& insert (const Cell& a, const Array<octave_idx_type>& ra_idx);
 
-  // XXX FIXME XXX
+  // FIXME
   bool is_true (void) const { return false; }
 
   static octave_value resize_fill_value (void) { return Matrix (); }
--- a/src/DLD-FUNCTIONS/__qp__.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/__qp__.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -226,7 +226,7 @@
 
 	  octave_idx_type dimZ = n - rank;
 
-	  // XXX FIXME XXX -- still remain to handle the case of
+	  // FIXME -- still remain to handle the case of
 	  // non-full rank active set matrix.
 
 	  // Computing the Y matrix (orthogonal to Z)
--- a/src/DLD-FUNCTIONS/dispatch.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/dispatch.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -36,7 +36,7 @@
 #include "symtab.h"
 #include "variables.h"
 
-// XXX FIXME XXX should be using a map from type_id->name, rather
+// FIXME should be using a map from type_id->name, rather
 // than type_name->name
 
 template class std::map<std::string,std::string>;
@@ -48,7 +48,7 @@
 {
 public:
 
-  // XXX FIXME XXX need to handle doc strings of dispatched functions, for
+  // FIXME need to handle doc strings of dispatched functions, for
   // example, by appending "for <f>(<type>,...) see <name>" for each
   // time dispatch(f,type,name) is called.
   octave_dispatch (const std::string &nm)
@@ -56,7 +56,7 @@
       has_alias (false)
   { }
 
-  // XXX FIXME XXX if we get deleted, we should restore the original
+  // FIXME if we get deleted, we should restore the original
   // symbol_record from base before dying.
   ~octave_dispatch (void) { }
 
@@ -204,7 +204,7 @@
 
       // check for updates to builtin function; ignore errors that
       // appear (they interfere with renaming), and remove the updated
-      // name from the current symbol table.  XXX FIXME XXX check that
+      // name from the current symbol table.  FIXME check that
       // updating a function updates it in all contexts --- it may be
       // that it is updated only in the current symbol table, and not
       // the caller.  I believe this won't be a problem because the
@@ -217,7 +217,7 @@
 
       // Move the builtin function out of the way and restore the
       // dispatch fuction.
-      // XXX FIXME XXX what if builtin wants to protect itself?
+      // FIXME what if builtin wants to protect itself?
       symbol_record *found = fbi_sym_tab->lookup (base, 0);
       bool readonly = found->is_read_only ();
       found->unprotect ();
@@ -391,7 +391,7 @@
       if (iscommand)
 	sr->mark_as_command();
       sr->document ("\n\n@noindent\nOverloaded function:\n");
-      sr->make_eternal (); // XXX FIXME XXX why??
+      sr->make_eternal (); // FIXME why??
       sr->mark_as_static ();
       sr->protect ();
     }
@@ -401,21 +401,21 @@
     = dynamic_cast<const octave_dispatch&> (sr->def().get_rep ());
 
   if (t.empty ())
-    // XXX FIXME XXX should return the list if nargout > 1
+    // FIXME should return the list if nargout > 1
     rep.print (octave_stdout);
   else if (n.empty ())
     {
-      // XXX FIXME XXX should we eliminate the dispatch function if
+      // FIXME should we eliminate the dispatch function if
       // there are no more elements?
-      // XXX FIXME XXX should clear the " $t:\w+" from the help string.
-      // XXX FIXME XXX -- seems bad to cast away const here...
+      // FIXME should clear the " $t:\w+" from the help string.
+      // FIXME -- seems bad to cast away const here...
       octave_dispatch& xrep = const_cast<octave_dispatch&> (rep);
 
       xrep.clear (t);
     }
   else
     {
-      // XXX FIXME XXX -- seems bad to cast away const here...
+      // FIXME -- seems bad to cast away const here...
       octave_dispatch& xrep = const_cast<octave_dispatch&> (rep);
 
       xrep.add (t, n);
@@ -529,7 +529,7 @@
 %! evalin('base','assert(hanning(1),1)');
 %! dispatch('hanning','string');
 
-XXX FIXME XXX I would rather not create dispatch_x/dispatch_y
+FIXME I would rather not create dispatch_x/dispatch_y
 in the current directory!  I don't want them installed accidentally.
 
 %!test # replace base m-file
@@ -554,6 +554,6 @@
 %!test 
 %! system("rm dispatch_y.m");
 
-XXX FIXME XXX add tests for preservation of mark_as_command status.
+FIXME add tests for preservation of mark_as_command status.
 
 */
--- a/src/DLD-FUNCTIONS/fftw_wisdom.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/fftw_wisdom.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -113,7 +113,7 @@
       std::string wisdom = octave_env::make_absolute
 	(Vload_path_dir_path.find_first_of (str), octave_env::getcwd ());
 
-      // XXX FIXME XXX -- should probably protect FILE* resources with
+      // FIXME -- should probably protect FILE* resources with
       // auto_ptr or similar...
 
       if (wisdom.empty () || overwrite)
--- a/src/DLD-FUNCTIONS/gcd.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/gcd.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -31,7 +31,7 @@
 #include "error.h"
 #include "oct-obj.h"
 
-// XXX FIXME XXX -- should probably handle Inf, NaN.
+// FIXME -- should probably handle Inf, NaN.
 
 static inline bool
 is_integer_value (double x)
--- a/src/DLD-FUNCTIONS/getrusage.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/getrusage.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -137,7 +137,7 @@
   Octave_map m;
   Octave_map tv_tmp;
 
-  // XXX FIXME XX -- maybe encapsulate all of this in a liboctave class
+  // FIXME -- maybe encapsulate all of this in a liboctave class
 #if defined (HAVE_GETRUSAGE)
 
   struct rusage ru;
--- a/src/DLD-FUNCTIONS/inv.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/inv.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -122,7 +122,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- this should really be done with an alias, but
+// FIXME -- this should really be done with an alias, but
 // alias_builtin() won't do the right thing if we are actually using
 // dynamic linking.
 
--- a/src/DLD-FUNCTIONS/luinc.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/luinc.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -141,7 +141,7 @@
       else
 	droptol = args(1).double_value ();
 
-      // XXX FIXME XXX Add code for zero-level factorization
+      // FIXME Add code for zero-level factorization
       if (zero_level)
 	error ("luinc: zero-level factorization not implemented");
 
--- a/src/DLD-FUNCTIONS/matrix_type.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/matrix_type.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -191,7 +191,7 @@
 	      // Ok, we're changing the matrix type
 	      std::string str_typ = args(1).string_value ();
 
-	      // XXX FIXME, why do I have to explicitly call the constructor?
+	      // FIXME -- why do I have to explicitly call the constructor?
 	      SparseType mattyp = SparseType ();
 
 	      octave_idx_type nl = 0;
@@ -308,7 +308,7 @@
 
 /*
 
-## XXX FIXME XXX
+## FIXME
 ## Disable tests for lower under-determined and upper over-determined 
 ## matrices and this detection is disabled in SparseType due to issues
 ## of non minimum norm solution being found.
--- a/src/DLD-FUNCTIONS/quad.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/quad.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -72,7 +72,7 @@
 
       if (error_state)
 	{
-	  quad_integration_error = 1;  // XXX FIXME XXX
+	  quad_integration_error = 1;  // FIXME
 	  gripe_user_supplied_eval ("quad");
 	  return retval;
 	}
@@ -89,13 +89,13 @@
 
 	  if (error_state)
 	    {
-	      quad_integration_error = 1;  // XXX FIXME XXX
+	      quad_integration_error = 1;  // FIXME
 	      gripe_user_supplied_eval ("quad");
 	    }
 	}
       else
 	{
-	  quad_integration_error = 1;  // XXX FIXME XXX
+	  quad_integration_error = 1;  // FIXME
 	  gripe_user_supplied_eval ("quad");
 	}
     }
--- a/src/DLD-FUNCTIONS/qz.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/qz.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -777,7 +777,7 @@
 		    }
 #endif
 
-		  // XXX FIXME XXX -- probably should be using
+		  // FIXME -- probably should be using
 		  // fortran_vec instead of &aa(jj,jj) here.
 
 		  double scale1, scale2, wr1, wr2, wi;
--- a/src/DLD-FUNCTIONS/regexp.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/regexp.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -20,7 +20,7 @@
 
 */
 
-// XXX FIXME XXX
+// FIXME
 // regexprep should be written as an m-file based on regexp
 
 #ifdef HAVE_CONFIG_H
--- a/src/DLD-FUNCTIONS/sort.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/sort.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -858,7 +858,7 @@
 		retval = mx_sort (chm, dim, smode);
 	    }
 
-	  // XXX FIXME XXX It would have been better to call 
+	  // FIXME It would have been better to call 
 	  // "octave_value(m, true)" but how can that be done 
 	  // within the template
 	  retval(0) = retval(0).convert_to_str (false, true);
--- a/src/DLD-FUNCTIONS/sqrtm.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/DLD-FUNCTIONS/sqrtm.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -180,7 +180,7 @@
 	  if (error_state)
 	    return retval;
 
-	  // XXX FIXME XXX -- eventually, ComplexSCHUR will accept a
+	  // FIXME -- eventually, ComplexSCHUR will accept a
 	  // real matrix arg.
 
 	  ComplexMatrix Ac (A);
@@ -210,7 +210,7 @@
 	    retval(0) = X;
 
 	  // Compute error
-	  // XXX FIXME XXX can we estimate the error without doing the
+	  // FIXME can we estimate the error without doing the
 	  // matrix multiply?
 
 	  err = frobnorm (X*X - ComplexMatrix (A)) / frobnorm (A);
--- a/src/__gnuplot_raw__.l	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/__gnuplot_raw__.l	Mon Apr 24 19:13:11 2006 +0000
@@ -375,7 +375,7 @@
 {
   std::string retval;
 
-  // XXX FIXME XXX -- specify minimum match length for these.
+  // FIXME -- specify minimum match length for these.
   static const char *plot_styles[] =
     {
       "boxes",
@@ -617,7 +617,7 @@
   else
     retstr += std::string (yytext);
 
-  // XXX FIXME XXX -- should evaluate the remaining tokens, but this
+  // FIXME -- should evaluate the remaining tokens, but this
   // needs changes in the parser.
   retstr += " " + read_until (plottok_or_end_p, lasttok);
 
@@ -755,7 +755,7 @@
       instance->do_set_gnuplot_use_title_option (opt);
   }
 
-  // XXX FIXME XXX -- should only remove tmp files associated with
+  // FIXME -- should only remove tmp files associated with
   // gnuplot?
   static void cleanup_tmp_files (void) { ::cleanup_tmp_files (); }
 
@@ -949,7 +949,7 @@
       else
         cmd = "\"" + gnuplot_exe + "\"";
 
-      // XXX FIXME XXX -- I'm not sure this is the right thing to do,
+      // FIXME -- I'm not sure this is the right thing to do,
       // but without it, C-c at the octave prompt will kill gnuplot...
 
 #if defined (HAVE_POSIX_SIGNALS)
@@ -1093,7 +1093,7 @@
 {
   do_send_raw ("clear\n");
 
-  // XXX FIXME XXX -- instead of just clearing these things, it would
+  // FIXME -- instead of just clearing these things, it would
   // be nice if we could reset things to a user-specified default
   // state.
 
@@ -1291,7 +1291,7 @@
 	  if (tmp_data.is_string ())
 	    {
 	      file = file_ops::tilde_expand (tmp_data.string_value ());
-	      // XXX FIXME XXX -- perhaps should check if the file exists?
+	      // FIXME -- perhaps should check if the file exists?
 	      outstr += file + " ";
 	    }
 	  else
--- a/src/bitfcns.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/bitfcns.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -42,7 +42,7 @@
 #include "ov-scalar.h"
 #include "ov-re-mat.h"
 
-// XXX FIXME XXX -- could probably eliminate some code duplication by
+// FIXME -- could probably eliminate some code duplication by
 // clever use of templates.
 
 #define BITOPX(OP, FNAME, RET) \
--- a/src/c-file-ptr-stream.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/c-file-ptr-stream.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -44,7 +44,7 @@
   close ();
 }
 
-// XXX FIXME XXX -- I'm sure there is room for improvement here...
+// FIXME -- I'm sure there is room for improvement here...
 
 c_file_ptr_buf::int_type
 c_file_ptr_buf::overflow (int_type c)
@@ -129,7 +129,7 @@
 c_file_ptr_buf::seekoff (std::streamoff offset, std::ios::seekdir dir,
 			 std::ios::openmode)
 {
-  // XXX FIXME XXX
+  // FIXME
 #if 0
   if (f)
     {
@@ -146,7 +146,7 @@
 std::streampos
 c_file_ptr_buf::seekpos (std::streampos offset, std::ios::openmode)
 {
-  // XXX FIXME XXX
+  // FIXME
 #if 0  
   if (f)
     {
@@ -197,7 +197,7 @@
   close ();
 }
 
-// XXX FIXME XXX -- I'm sure there is room for improvement here...
+// FIXME -- I'm sure there is room for improvement here...
 
 c_zfile_ptr_buf::int_type
 c_zfile_ptr_buf::overflow (int_type c)
@@ -273,7 +273,7 @@
 c_zfile_ptr_buf::seekoff (std::streamoff offset, std::ios::seekdir dir,
 			 std::ios::openmode)
 {
-  // XXX FIXME XXX
+  // FIXME
 #if 0
   if (f)
     {
@@ -290,7 +290,7 @@
 std::streampos
 c_zfile_ptr_buf::seekpos (std::streampos offset, std::ios::openmode)
 {
-  // XXX FIXME XXX
+  // FIXME
 #if 0  
   if (f)
     {
@@ -315,7 +315,7 @@
 int
 c_zfile_ptr_buf::flush (void)
 {
-  // XXX FIXME XXX -- do we need something more complex here, passing
+  // FIXME -- do we need something more complex here, passing
   // something other than 0 for the second argument to gzflush and
   // checking the return value, etc.?
 
--- a/src/c-file-ptr-stream.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/c-file-ptr-stream.h	Mon Apr 24 19:13:11 2006 +0000
@@ -94,7 +94,7 @@
   int_type underflow_common (bool);
 };
 
-// XXX FIXME XXX -- the following three classes could probably share
+// FIXME -- the following three classes could probably share
 // some code...
 
 template <typename STREAM_T, typename FILE_T, typename BUF_T>
--- a/src/data.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/data.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -432,7 +432,7 @@
   DATA_REDUCTION (cumsum);
 }
 
-// XXX FIXME XXX -- we could eliminate some duplicate code here with
+// FIXME -- we could eliminate some duplicate code here with
 // some template functions or macros.
 
 static octave_value
@@ -873,7 +873,7 @@
     {
       Array<int> vec = args(1).int_vector_value ();
 
-      // XXX FIXME XXX -- maybe we should create an idx_vector object
+      // FIXME -- maybe we should create an idx_vector object
       // here and pass that to permute?
 
       int n = vec.length ();
@@ -1216,7 +1216,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- perhaps this should be implemented with an
+// FIXME -- perhaps this should be implemented with an
 // octave_value member function?
 
 DEFUN (complex, args, ,
@@ -1480,7 +1480,7 @@
 
       check_dimensions (dims, fcn);
 
-      // XXX FIXME XXX -- perhaps this should be made extensible by
+      // FIXME -- perhaps this should be made extensible by
       // using the class name to lookup a function to call to create
       // the new value.
 
@@ -1523,7 +1523,7 @@
 	      retval = uint64NDArray (dims, val);
 	      break;
 
-	    case oct_data_conv::dt_single: // XXX FIXME XXX
+	    case oct_data_conv::dt_single: // FIXME
 	    case oct_data_conv::dt_double:
 	      retval = NDArray (dims, val);
 	      break;
@@ -1604,7 +1604,7 @@
 	{
 	  switch (dt)
 	    {
-	    case oct_data_conv::dt_single: // XXX FIXME XXX
+	    case oct_data_conv::dt_single: // FIXME
 	    case oct_data_conv::dt_double:
 	      retval = NDArray (dims, val);
 	      break;
@@ -1682,7 +1682,7 @@
 	{
 	  switch (dt)
 	    {
-	    case oct_data_conv::dt_single: // XXX FIXME XXX
+	    case oct_data_conv::dt_single: // FIXME
 	    case oct_data_conv::dt_double:
 	      retval = ComplexNDArray (dims, val);
 	      break;
@@ -2089,7 +2089,7 @@
 {
   octave_value retval;
 
-  // XXX FIXME XXX -- perhaps this should be made extensible by using
+  // FIXME -- perhaps this should be made extensible by using
   // the class name to lookup a function to call to create the new
   // value.
 
@@ -2129,7 +2129,7 @@
 	  retval = identity_matrix<uint64NDArray> (nr, nc);
 	  break;
 
-	case oct_data_conv::dt_single: // XXX FIXME XXX
+	case oct_data_conv::dt_single: // FIXME
 	case oct_data_conv::dt_double:
 	  retval = identity_matrix<NDArray> (nr, nc);
 	  break;
@@ -2312,7 +2312,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- should accept dimensions as separate args for N-d
+// FIXME -- should accept dimensions as separate args for N-d
 // arrays as well as 1-d and 2-d arrays.
 
 DEFUN (resize, args, ,
@@ -2366,7 +2366,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- should use octave_idx_type for dimensions.
+// FIXME -- should use octave_idx_type for dimensions.
 
 DEFUN (reshape, args, ,
   "-*- texinfo -*-\n\
--- a/src/defaults.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/defaults.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -598,7 +598,7 @@
       // checks for out of date symbols even if the change to LOADPATH
       // and subsequent function calls happen between prompts.
 
-      // XXX FIXME XXX -- maybe we should rename
+      // FIXME -- maybe we should rename
       // Vlast_prompt_time_stamp since the new usage doesn't really
       // fit with the current name?
 
--- a/src/defun-int.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/defun-int.h	Mon Apr 24 19:13:11 2006 +0000
@@ -234,7 +234,7 @@
 
 // How mapper functions are actually installed.
 
-// XXX FIXME XXX -- Really want to avoid the following casts, since
+// FIXME -- Really want to avoid the following casts, since
 // (as always with casts) it may mask some real errors...
 
 #define DEFUN_MAPPER_INTERNAL(name, ch_map, d_b_map, c_b_map, d_d_map, \
--- a/src/defun.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/defun.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -42,7 +42,7 @@
 #include "symtab.h"
 #include "variables.h"
 
-// XXX FIXME XXX -- this function could probably share some code with
+// FIXME -- this function could probably share some code with
 // the help functions.
 
 void
--- a/src/dirfns.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/dirfns.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -67,7 +67,7 @@
 // directory tree.
 static bool Vconfirm_recursive_rmdir = true;
 
-// XXX FIXME XXX -- changing the plotter directory should be handled
+// FIXME -- changing the plotter directory should be handled
 // by registering a function for octave_env::chdir to call so that
 // this function can be eliminated.
 
@@ -77,7 +77,7 @@
   int cd_ok = octave_env::chdir (newdir);
 
   if (cd_ok)
-    // XXX FIXME XXX -- this should be handled as a list of functions
+    // FIXME -- this should be handled as a list of functions
     // to call so users can add their own chdir handlers.
     /* do_external_plotter_cd (newdir) */;
   else
@@ -285,7 +285,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- should maybe also allow second arg to specify
+// FIXME -- should maybe also allow second arg to specify
 // mode?  OTOH, that might cause trouble with compatibility later...
 
 DEFCMD (mkdir, args, ,
--- a/src/error.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/error.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -156,7 +156,7 @@
 
   output_buf << std::endl;
 
-  // XXX FIXME XXX -- we really want to capture the message before it
+  // FIXME -- we really want to capture the message before it
   // has all the formatting goop attached to it.  We probably also
   // want just the message, not the traceback information.
 
@@ -202,7 +202,7 @@
 
   output_buf << std::endl;
 
-  // XXX FIXME XXX -- we really want to capture the message before it
+  // FIXME -- we really want to capture the message before it
   // has all the formatting goop attached to it.  We probably also
   // want just the message, not the traceback information.
 
@@ -224,7 +224,7 @@
 	{
 	  error_message_buffer = new std::ostringstream ();
 
-	  // XXX FIXME XXX -- this is ugly, but it prevents
+	  // FIXME -- this is ugly, but it prevents
 	  //
 	  //   eval ("error (\"msg\")", "error (lasterr ())");
 	  //
@@ -406,7 +406,7 @@
 
       if (print_code)
 	{
-	  // XXX FIXME XXX -- Note that the column number is probably
+	  // FIXME -- Note that the column number is probably
 	  // not going to mean much here since the code is being
 	  // reproduced from the parse tree, and we are only showing
 	  // one statement even if there were multiple statements on
@@ -778,7 +778,7 @@
 @end example\n\
 @end deftypefn")
 {
-  // XXX FIXME XXX -- need to extract and pass message id to
+  // FIXME -- need to extract and pass message id to
   // handle_message.
 
   octave_value_list retval;
@@ -882,7 +882,7 @@
 			{
 			  if (ident(i).string_value () == arg2)
 			    {
-			      // XXX FIXME XXX -- if state for "all" is
+			      // FIXME -- if state for "all" is
 			      // same as arg1, we can simply remove the
 			      // item from the list.
 
@@ -895,7 +895,7 @@
 
 		      if (! found)
 			{
-			  // XXX FIXME XXX -- if state for "all" is
+			  // FIXME -- if state for "all" is
 			  // same as arg1, we don't need to do anything.
 
 			  ident.resize (dim_vector (1, nel+1));
--- a/src/file-io.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/file-io.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -108,7 +108,7 @@
 
 // List of files to delete when we exit or crash.
 //
-// XXX FIXME XXX -- this should really be static, but that causes
+// FIXME -- this should really be static, but that causes
 // problems on some systems.
 std::stack <std::string> tmp_files;
 
@@ -251,7 +251,7 @@
 
   if (nargin == 1)
     {
-      // XXX FIXME XXX -- any way to avoid special case for stdout?
+      // FIXME -- any way to avoid special case for stdout?
 
       int fid = octave_stream_list::get_file_number (args (0));
 
@@ -1136,7 +1136,7 @@
 
 		      octave_value tmp = os.scanf (args(1), size, count, who);
 
-		      // XXX FIXME XXX -- is this the right thing to do?
+		      // FIXME -- is this the right thing to do?
 		      // Extract error message first, because getting
 		      // position will clear it.
 		      std::string errmsg = os.error ();
--- a/src/fn-cache.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/fn-cache.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -104,7 +104,7 @@
   // For now, always generate the list of function files on each
   // call.
 
-  // XXX FIXME XXX -- this could probably be improved by keeping lists
+  // FIXME -- this could probably be improved by keeping lists
   // of all the function files for the current load path and only
   // updating that when the load path changes.  Have to be careful to
   // return the right thing when we are only looking for a subset of
--- a/src/fn-cache.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/fn-cache.h	Mon Apr 24 19:13:11 2006 +0000
@@ -31,7 +31,7 @@
 
 class string_vector;
 
-// XXX FIXME XXX -- this should maybe be nested in the
+// FIXME -- this should maybe be nested in the
 // octave_fcn_file_name_cache class...
 
 class
--- a/src/help.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/help.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -84,7 +84,7 @@
 // functions.
 static bool Vsuppress_verbose_help_message;
 
-// XXX FIXME XXX -- maybe this should use string instead of char*.
+// FIXME -- maybe this should use string instead of char*.
 
 struct help_list
 {
@@ -387,7 +387,7 @@
   return keywords;
 }
 
-// It's not likely that this does the right thing now.  XXX FIXME XXX
+// It's not likely that this does the right thing now.  FIXME
 
 string_vector
 make_name_list (void)
@@ -461,7 +461,7 @@
 mailing list.\n"; 
 }
 
-// XXX FIXME XXX -- this needs a major overhaul to cope with new
+// FIXME -- this needs a major overhaul to cope with new
 // symbol table stuff.
 
 static void
@@ -516,7 +516,7 @@
   display_names_from_help_list (octave_stdout, keyword_help (),
 				"reserved words");
 
-  // XXX FIXME XXX -- is this distinction needed?
+  // FIXME -- is this distinction needed?
 
   LIST_SYMBOLS (symbol_record::BUILTIN_CONSTANT, "built-in constants");
 
@@ -761,9 +761,9 @@
 
 	  // Check for updates to builtin function; ignore errors
 	  // that appear (they interfere with renaming), and remove
-	  // the updated name from the current symbol table.  XXX
-	  // FIXME XXX check that updating a function updates it in
-	  // all contexts --- it may be that it is updated only in the
+	  // the updated name from the current symbol table.  FIXME --
+	  // check that updating a function updates it in all
+	  // contexts.  It may be that it is updated only in the 
 	  // current symbol table, and not the caller.  I believe this
 	  // won't be a problem because the caller will go through the
 	  // same logic and end up with the newer version.
@@ -776,7 +776,7 @@
 	  curr_sym_tab->clear_function (nm);
 
 	  // Move the builtin function out of the way and restore the
-	  // dispatch fuction.  XXX FIXME XXX what if builtin wants to
+	  // dispatch fuction.  FIXME what if builtin wants to
 	  // protect itself?
 
 	  fbi_sym_tab->rename (nm, "builtin:" + nm);
@@ -978,7 +978,7 @@
     {
       if (argc > 1)
 	{
-	  // XXX FIXME XXX -- we should really use getopt ()
+	  // FIXME -- we should really use getopt ()
 
 	  bool quiet = false;
 	  bool pr_orig_txt = true;
@@ -1106,7 +1106,7 @@
   return retval;
 }
 
-// XXX FIXME XXX 
+// FIXME 
 // This function attempts to find the first sentence of a help string, though
 // given that the user can create the help in an arbitrary format, your
 // success might vary.. it works much better with help string formated in
--- a/src/input.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/input.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -292,7 +292,7 @@
 int
 octave_read (char *buf, unsigned max_size)
 {
-  // XXX FIXME XXX -- is this a safe way to buffer the input?
+  // FIXME -- is this a safe way to buffer the input?
 
   static const char * const eol = "\n";
   static std::string input_buf;
@@ -386,7 +386,7 @@
   return command_editor::get_input_stream ();
 }
 
-// XXX FIXME XXX -- make this generate file names when appropriate.
+// FIXME -- make this generate file names when appropriate.
 
 static string_vector
 generate_possible_completions (const std::string& text, std::string& prefix,
@@ -468,7 +468,7 @@
 	      else
 		retval = name;
 
-	      // XXX FIXME XXX -- looks_like_struct is broken for now,
+	      // FIXME -- looks_like_struct is broken for now,
 	      // so it always returns false.
 
  	      if (matches == 1 && looks_like_struct (retval))
@@ -498,7 +498,7 @@
 
   command_editor::set_name ("Octave");
 
-  // XX FIXME XXX -- this needs to include a comma too, but that
+  // FIXME -- this needs to include a comma too, but that
   // causes trouble for the new struct element completion code.
 
   static const char *s = "\t\n !\"\'*+-/:;<=>(){}[\\]^`~";
@@ -652,7 +652,7 @@
 
       if (read_as_string)
 	{
-	  // XXX FIXME XXX -- fix gnu_readline and octave_gets instead!
+	  // FIXME -- fix gnu_readline and octave_gets instead!
 	  if (input_buf.length () == 1 && input_buf[0] == '\n')
 	    retval(0) = "";
 	  else
@@ -809,7 +809,7 @@
 
   unwind_protect::begin_frame ("do_keyboard");
 
-  // XXX FIXME XXX -- we shouldn't need both the
+  // FIXME -- we shouldn't need both the
   // command_history object and the
   // Vsaving_history variable...
   command_history::ignore_entries (false);
--- a/src/lex.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/lex.h	Mon Apr 24 19:13:11 2006 +0000
@@ -24,7 +24,7 @@
 #if !defined (octave_lex_h)
 #define octave_lex_h 1
 
-// XXX FIXME XXX -- these input buffer things should be members of a
+// FIXME -- these input buffer things should be members of a
 // parser input stream class.
 
 typedef struct yy_buffer_state *YY_BUFFER_STATE;
--- a/src/lex.l	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/lex.l	Mon Apr 24 19:13:11 2006 +0000
@@ -168,7 +168,7 @@
 // information.  This has to appear before lex.h is included, because
 // one of the macros defined there uses token_stack.
 //
-// XXX FIXME XXX -- this should really be static, but that causes
+// FIXME -- this should really be static, but that causes
 // problems on some systems.
 std::stack <token*> token_stack;
 
@@ -1235,7 +1235,7 @@
 
 // Grab the help text from an function file.
 
-// XXX FIXME XXX -- gobble_leading_white_space() in parse.y
+// FIXME -- gobble_leading_white_space() in parse.y
 // duplicates some of this code!
 
 static std::string
--- a/src/load-save.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/load-save.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -118,7 +118,7 @@
     error ("%s: unable to open file `%s'", fcn.c_str (), file.c_str ());
 }
 
-// XXX FIXME XXX -- shouldn't this be implemented in terms of other
+// FIXME -- shouldn't this be implemented in terms of other
 // functions that are already available?
 
 // Install a variable with name NAME and the value specified TC in the
@@ -789,7 +789,7 @@
 #endif /* HAVE_HDF5 */
       if (format != LS_UNKNOWN)
 	{
-	  // XXX FIXME XXX -- if we have already seen EOF on a
+	  // FIXME -- if we have already seen EOF on a
 	  // previous call, how do we fix up the state of std::cin so
 	  // that we can get additional input?  I'm afraid that we
 	  // can't fix this using std::cin only.
@@ -1330,7 +1330,7 @@
 	    {
 	      double tc_size = tc.byte_size () / 1024;
 
-	      // XXX FIXME XXX -- maybe we should try to throw out the
+	      // FIXME -- maybe we should try to throw out the
 	      // largest first...
 
 	      if (Voctave_core_file_limit < 0
@@ -1361,7 +1361,7 @@
 {
   if (Vcrash_dumps_octave_core)
     {
-      // XXX FIXME XXX -- should choose better file name?
+      // FIXME -- should choose better file name?
 
       const char *fname = Voctave_core_file_name.c_str ();
 
@@ -1638,7 +1638,7 @@
 	// don't insert any commands here!  the brace below must go
 	// with the "else" above!
 	{
-	  // XXX FIXME XXX -- should things intended for the screen end up
+	  // FIXME -- should things intended for the screen end up
 	  // in a octave_value (string)?
 	  
 	  save_vars (argv, i, argc, octave_stdout, save_builtins, format,
--- a/src/ls-hdf5.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ls-hdf5.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -335,7 +335,7 @@
 	  // What integer type do we really have..
 	  std::string int_typ;
 #ifdef HAVE_H5T_GET_NATIVE_TYPE
-	  // XXX FIXME XX test this code and activated with an autoconf 
+	  // FIXME test this code and activated with an autoconf 
 	  // test!! It is also incorrect for 64-bit indexing!!
 	  
 	  switch (H5Tget_native_type (type_id, H5T_DIR_ASCEND))
@@ -538,7 +538,7 @@
 
   H5get_libversion (&vers_major, &vers_minor, &vers_release);
 
-  // XXX FIXME XXX -- this test looks wrong.
+  // FIXME -- this test looks wrong.
   have_h5giterate_bug
     = (vers_major < 1
        || (vers_major == 1 && (vers_minor < 2
--- a/src/ls-mat-ascii.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ls-mat-ascii.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -297,7 +297,7 @@
 
 	  if (is || is.eof ())
 	    {
-	      // XXX FIXME XXX -- not sure this is best, but it works.
+	      // FIXME -- not sure this is best, but it works.
 
 	      if (is.eof ())
 		is.clear ();
--- a/src/ls-mat5.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ls-mat5.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -447,7 +447,7 @@
 	  destLen = tmp[1] + 8;
 	  std::string outbuf (destLen, ' '); 
 
-	  // XXX FIXME XXX -- find a way to avoid casting away const here!
+	  // FIXME -- find a way to avoid casting away const here!
 
 	  int err = uncompress (reinterpret_cast<Bytef *> (const_cast<char *> (outbuf.c_str ())), &destLen, 
 				reinterpret_cast<Bytef *> (inbuf), element_length);
@@ -1661,7 +1661,7 @@
 	  write_mat5_integer_data (os, m.ridx (), - sizeof(int), nnz);
 	  write_mat5_integer_data (os, m.cidx (), - sizeof(int), nc + 1);
 
-	  // XXX FIXME XXX
+	  // FIXME
 	  // Is there a way to easily do without this buffer
 	  NDArray buf (dim_vector (nnz, 1));
 
--- a/src/ls-oct-ascii.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ls-oct-ascii.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -258,7 +258,7 @@
 //  # length: 5
 //  array
 //
-// XXX FIXME XXX -- this format is fairly rigid, and doesn't allow for
+// FIXME -- this format is fairly rigid, and doesn't allow for
 // arbitrary comments.  Someone should fix that. It does allow arbitrary
 // types however.
 
@@ -347,7 +347,7 @@
 //
 // Returns 1 for success and 0 for failure.
 
-// XXX FIXME XXX -- should probably write the help string here too.
+// FIXME -- should probably write the help string here too.
 
 bool
 save_ascii_data (std::ostream& os, const octave_value& val_arg,
--- a/src/ls-oct-binary.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ls-oct-binary.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -206,7 +206,7 @@
 
     case 5:
       {
-	// XXX FIXME XXXX
+	// FIXMEX
 	// This is cruft, since its for a save type that is old. Maybe
 	// this is taking backward compatability too far!!
 	FOUR_BYTE_INT len;
--- a/src/mappers.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/mappers.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -37,7 +37,7 @@
 #include "ov-mapper.h"
 #include "variables.h"
 
-// XXX FIXME XXX -- perhaps this could be avoided by determining
+// FIXME -- perhaps this could be avoided by determining
 // whether the is* functions are actually functions or just macros.
 
 static int
--- a/src/oct-hist.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/oct-hist.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -545,7 +545,7 @@
 
   // Delete the temporary file.
 
-  // XXX FIXME XXX -- should probably be done using an unwind_protect.
+  // FIXME -- should probably be done using an unwind_protect.
 
   unlink (name.c_str ());
 }
--- a/src/oct-lvalue.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/oct-lvalue.h	Mon Apr 24 19:13:11 2006 +0000
@@ -33,7 +33,7 @@
 #include "pt-idx.h"
 #include "symtab.h"
 
-// XXX FIXME XXX -- eliminate the following kluge?
+// FIXME -- eliminate the following kluge?
 
 // This variable is used when creating dummy octave_lvalue objects.
 static octave_value dummy_val;
--- a/src/oct-obj.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/oct-obj.h	Mon Apr 24 19:13:11 2006 +0000
@@ -57,7 +57,7 @@
   void operator delete (void *p, size_t size)
     { allocator.free (p, size); }
 
-  // XXX FIXME XXX -- without this, I have errors with the stack of
+  // FIXME -- without this, I have errors with the stack of
   // octave_value_list objects in ov-usr-fcn.h.  Why?
   void *operator new (size_t size, void *p)
     { return ::operator new (size, p); }
--- a/src/oct-prcstrm.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/oct-prcstrm.h	Mon Apr 24 19:13:11 2006 +0000
@@ -26,7 +26,7 @@
 
 #include "oct-stdstrm.h"
 
-// XXX FIXME XXX -- why don't these classes use iprocstream and
+// FIXME -- why don't these classes use iprocstream and
 // oprocstream, which in turn use the octave_procbuf class?
 
 class
--- a/src/oct-stdstrm.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/oct-stdstrm.h	Mon Apr 24 19:13:11 2006 +0000
@@ -73,7 +73,7 @@
 
   std::ostream *output_stream (void) { return (md & std::ios::out) ? s : 0; }
 
-  // XXX FIXME XXX -- should not have to cast away const here.
+  // FIXME -- should not have to cast away const here.
   BUF_T *rdbuf (void) const
     { return s ? (const_cast<STREAM_T *> (s))->rdbuf () : 0; }
 
--- a/src/oct-stream.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/oct-stream.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -1036,7 +1036,7 @@
 
 #define OCTAVE_SCAN(is, fmt, arg) octave_scan (is, fmt, arg)
 
-// XXX FIXME XXX -- this needs to be fixed to handle formats which
+// FIXME -- this needs to be fixed to handle formats which
 // specify a maximum width.
 
 template <class T>
@@ -1927,7 +1927,7 @@
 		  if (is.rdstate () & std::ios::failbit)
 		    is.clear (is.rdstate () & (~std::ios::failbit));
 
-		  // XXX FIXME XXX -- is this the right thing to do?
+		  // FIXME -- is this the right thing to do?
 
 		  if (interactive && name () == "stdin")
 		    {
@@ -2135,7 +2135,7 @@
 	{
 	  error ("%s: read error", who.c_str ());
 
-	  // XXX FIXME XXX -- is this the right thing to do?
+	  // FIXME -- is this the right thing to do?
 
 	  if (interactive && name () == "stdin")
 	    {
@@ -2683,7 +2683,7 @@
 
       if (os)
 	{
-	  // XXX FIXME XXX -- why does this seem to be necessary?
+	  // FIXME -- why does this seem to be necessary?
 	  // Without it, output from a loop like
 	  //
 	  //   for i = 1:100, fputs (stdout, "foo\n"); endfor
@@ -3042,7 +3042,7 @@
       max_size = 32;
     }
 
-  // XXX FIXME XXX -- byte order for Cray?
+  // FIXME -- byte order for Cray?
 
   bool swap = false;
 
@@ -3069,7 +3069,7 @@
 
       for (;;)
 	{
-	  // XXX FIXME XXX -- maybe there should be a special case for
+	  // FIXME -- maybe there should be a special case for
 	  // skip == 0.
 
 	  if (is)
@@ -3166,7 +3166,7 @@
   do_read<RET_T, READ_T> (octave_stream&, octave_idx_type, octave_idx_type, octave_idx_type, octave_idx_type, bool, \
 			  oct_mach_info::float_format, octave_idx_type&)
 
-// XXX FIXME XXX -- should we only have float if it is a different
+// FIXME -- should we only have float if it is a different
 // size from double?
 
 #define INSTANTIATE_DO_READ(VAL_T) \
@@ -3254,9 +3254,9 @@
 
   if (stream_ok ())
     {
-      // XXX FIXME XXX -- we may eventually want to make this extensible.
-
-      // XXX FIXME XXX -- we need a better way to ensure that this
+      // FIXME -- we may eventually want to make this extensible.
+
+      // FIXME -- we need a better way to ensure that this
       // numbering stays consistent with the order of the elements in the
       // data_type enum in the oct_data_conv class.
 
@@ -3289,7 +3289,7 @@
 		  retval = (*fcn) (*this, nr, nc, block_size, skip,
 				   do_float_fmt_conv, ffmt, char_count);
 
-		  // XXX FIXME XXX -- kluge!
+		  // FIXME -- kluge!
 
 		  if (! error_state
 		      && (output_type == oct_data_conv::dt_char
@@ -3468,7 +3468,7 @@
 
   bool do_float_conversion = (flt_fmt != native_flt_fmt);
 
-  // XXX FIXME XXX -- byte order for Cray?
+  // FIXME -- byte order for Cray?
 
   bool swap = false;
 
@@ -3492,7 +3492,7 @@
 
 	  if (skip != 0 && (i % block_size) == 0)
 	    {
-	      // XXX FIXME XXX -- probably should try to write larger
+	      // FIXME -- probably should try to write larger
 	      // blocks...
 
 	      unsigned char zero = 0;
@@ -3704,7 +3704,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- maybe this should work for string arrays too.
+// FIXME -- maybe this should work for string arrays too.
 
 int
 octave_stream::puts (const octave_value& tc_s, const std::string& who)
--- a/src/octave.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/octave.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -722,14 +722,14 @@
     {
       command_editor::blink_matching_paren (false);
 
-      // XXX FIXME XXX -- is this the right thing to do?
+      // FIXME -- is this the right thing to do?
 
       bind_builtin_variable ("echo_executing_commands", ECHO_CMD_LINE);
     }
 
   if (embedded)
     {
-      // XXX FIXME XXX -- do we need to do any cleanup here before
+      // FIXME -- do we need to do any cleanup here before
       // returning?  If we don't, what will happen to Octave functions
       // that have been registered to execute with atexit, for example?
 
--- a/src/ops.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ops.h	Mon Apr 24 19:13:11 2006 +0000
@@ -251,7 +251,7 @@
     return octave_value (op v.e ## _value ()); \
   }
 
-// XXX FIXME XXX -- in some cases, the constructor isn't necessary.
+// FIXME -- in some cases, the constructor isn't necessary.
 
 #define DEFUNOP_FN(name, t, f) \
   UNOPDECL (name, a) \
@@ -301,7 +301,7 @@
       (v1.e1 ## _value () op v2.e2 ## _value ()); \
   }
 
-// XXX FIXME XXX -- in some cases, the constructor isn't necessary.
+// FIXME -- in some cases, the constructor isn't necessary.
 
 #define DEFBINOP_FN(name, t1, t2, f) \
   BINOPDECL (name, a1, a2) \
@@ -334,7 +334,7 @@
 #define DEFCATOP(name, t1, t2)	\
   CATOPDECL (name, a1, a2)
 
-// XXX FIXME XXX -- in some cases, the constructor isn't necessary.
+// FIXME -- in some cases, the constructor isn't necessary.
 
 #define DEFCATOP_FN(name, t1, t2, f) \
   CATOPDECL (name, a1, a2) \
--- a/src/ov-base-sparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-base-sparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -258,7 +258,7 @@
   octave_idx_type nc = matrix.cols ();
   octave_idx_type nz = nnz ();
 
-  // XXX FIXME XXX -- this should probably all be handled by a
+  // FIXME -- this should probably all be handled by a
   // separate octave_print_internal function that can handle format
   // compact, loose, etc.
 
@@ -275,7 +275,7 @@
 	{
 	  OCTAVE_QUIT;
 
-	  // XXX FIXME XXX -- is there an easy way to get the max row
+	  // FIXME -- is there an easy way to get the max row
 	  // and column indices so we can set the width appropriately
 	  // and line up the columns here?  Similarly, we should look
 	  // at all the nonzero values and display them with the same
--- a/src/ov-base.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-base.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -1023,7 +1023,7 @@
  
   if (beginning_of_line)
     {
-      // XXX FIXME XXX -- do we need this?
+      // FIXME -- do we need this?
       // os << prefix;
 
       for (int i = 0; i < curr_print_indent_level; i++)
--- a/src/ov-bool-mat.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-bool-mat.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -90,7 +90,7 @@
 bool
 octave_bool_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
+  // FIXME
   return false;
 }
 
@@ -99,10 +99,10 @@
 {
   double retval = lo_ieee_nan_value ();
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("bool matrix", "real scalar");
 
@@ -121,10 +121,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("bool matrix", "complex scalar");
 
--- a/src/ov-bool-sparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-bool-sparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -89,7 +89,7 @@
 bool
 octave_sparse_bool_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
+  // FIXME
   return false;
 }
 
@@ -100,7 +100,7 @@
 
   if (numel () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("bool sparse matrix", "real scalar");
 
@@ -119,10 +119,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("bool sparse matrix", "complex scalar");
 
@@ -142,7 +142,7 @@
   return tmp.convert_to_str (pad, force, type);
 }
 
-// XXX FIXME XXX These are inefficient ways of creating full matrices
+// FIXME These are inefficient ways of creating full matrices
 
 Matrix
 octave_sparse_bool_matrix::matrix_value (bool) const
--- a/src/ov-bool-sparse.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-bool-sparse.h	Mon Apr 24 19:13:11 2006 +0000
@@ -83,7 +83,7 @@
 
   octave_base_value *try_narrowing_conversion (void);
 
-  // XXX FIXME XXX Adapt idx_vector to allow sparse logical indexing!!
+  // FIXME Adapt idx_vector to allow sparse logical indexing!!
   idx_vector index_vector (void) const 
     { return idx_vector (bool_array_value ()); }
 
--- a/src/ov-bool.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-bool.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -85,13 +85,13 @@
     retval = scalar;
   else
     {
-      // XXX FIXME XXX -- this doesn't solve the problem of
+      // FIXME -- this doesn't solve the problem of
       //
       //   a = 1; a([1,1], [1,1], [1,1])
       //
       // and similar constructions.  Hmm...
 
-      // XXX FIXME XXX -- using this constructor avoids narrowing the
+      // FIXME -- using this constructor avoids narrowing the
       // 1x1 matrix back to a scalar value.  Need a better solution
       // to this problem.
 
--- a/src/ov-builtin.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-builtin.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -81,11 +81,11 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // octave_user_function::subsref.
   //
-  // XXX FIXME XXX -- Note that if a function call returns multiple
+  // FIXME -- Note that if a function call returns multiple
   // values, and there is further indexing to perform, then we are
   // ignoring all but the first value.  Is this really what we want to
   // do?  If it is not, then what should happen for stat("file").size,
--- a/src/ov-cell.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-cell.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -109,7 +109,7 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // octave_user_function::subsref.
 
--- a/src/ov-ch-mat.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-ch-mat.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -57,10 +57,10 @@
 {
   double retval = lo_ieee_nan_value ();
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("character matrix", "real scalar");
 
@@ -79,10 +79,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("character matrix", "complex scalar");
 
--- a/src/ov-complex.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-complex.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -73,13 +73,13 @@
     retval = scalar;
   else
     {
-      // XXX FIXME XXX -- this doesn't solve the problem of
+      // FIXME -- this doesn't solve the problem of
       //
       //   a = i; a([1,1], [1,1], [1,1])
       //
       // and similar constructions.  Hmm...
 
-      // XXX FIXME XXX -- using this constructor avoids narrowing the
+      // FIXME -- using this constructor avoids narrowing the
       // 1x1 matrix back to a scalar value.  Need a better solution
       // to this problem.
 
--- a/src/ov-complex.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-complex.h	Mon Apr 24 19:13:11 2006 +0000
@@ -88,7 +88,7 @@
 
   bool is_complex_type (void) const { return true; }
 
-  // XXX FIXME XXX ???
+  // FIXME ???
   bool valid_as_scalar_index (void) const { return false; }
   bool valid_as_zero_index (void) const { return false; }
 
--- a/src/ov-cx-mat.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-cx-mat.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -114,7 +114,7 @@
 bool
 octave_complex_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
+  // FIXME
   return false;
 }
 
@@ -126,10 +126,10 @@
   if (! force_conversion && Vwarn_imag_to_real)
     gripe_implicit_conversion ("complex matrix", "real scalar");
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("complex matrix", "real scalar");
 
@@ -161,10 +161,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("complex matrix", "complex scalar");
 
@@ -403,7 +403,7 @@
       else
 	st = LS_FLOAT;
     }
-  else if (d.numel () > 4096) // XXX FIXME XXX -- make this configurable.
+  else if (d.numel () > 4096) // FIXME -- make this configurable.
     {
       double max_val, min_val;
       if (m.all_integers (max_val, min_val))
--- a/src/ov-cx-sparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-cx-sparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -110,7 +110,7 @@
 bool
 octave_sparse_complex_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
+  // FIXME
   return false;
 }
 
@@ -122,10 +122,10 @@
   if (! force_conversion && Vwarn_imag_to_real)
     gripe_implicit_conversion ("complex sparse matrix", "real scalar");
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (numel () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("complex sparse matrix", "real scalar");
 
@@ -157,10 +157,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (numel () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("complex sparse matrix", "real scalar");
 
@@ -238,7 +238,7 @@
       else
 	st = LS_FLOAT;
     }
-  else if (matrix.nzmax () > 8192) // XXX FIXME XXX -- make this configurable.
+  else if (matrix.nzmax () > 8192) // FIXME -- make this configurable.
     {
       double max_val, min_val;
       if (matrix.all_integers (max_val, min_val))
--- a/src/ov-fcn-handle.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-fcn-handle.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -91,14 +91,14 @@
 
 	    if (ff_nm.empty ())
 	      {
-		// XXX FIXME XXX -- need to handle inline and
+		// FIXME -- need to handle inline and
 		// command-line functions here.
 	      }
 	    else
 	      {
 		if (fcn_out_of_date (f, ff_nm, tp))
 		  {
-		    // XXX FIXME XXX -- there is currently no way to
+		    // FIXME -- there is currently no way to
 		    // parse a .m file or reload a .oct file that
 		    // leaves the fbi symbol table untouched.  We need
 		    // a function that will parse the file and return
@@ -133,7 +133,7 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // octave_builtin::subsref.
 
--- a/src/ov-fcn-inline.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-fcn-inline.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -247,7 +247,7 @@
   hid_t space_hid = -1, data_hid = -1, type_hid = -1;;
   bool retval = true;
 
-  // XXX FIXME XXX Is there a better way of saving string vectors, than a
+  // FIXME Is there a better way of saving string vectors, than a
   // null padded matrix?
 
   OCTAVE_LOCAL_BUFFER (hsize_t, hdims, 2);
--- a/src/ov-intx.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-intx.h	Mon Apr 24 19:13:11 2006 +0000
@@ -89,7 +89,7 @@
 
       if (numel () > 0)
 	{
-	  // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+	  // FIXME -- is warn_fortran_indexing the right variable here?
 	  if (Vwarn_fortran_indexing)
 	    gripe_implicit_conversion (type_name (), "real scalar");
 
@@ -179,13 +179,13 @@
 	retval = scalar;
       else
 	{
-	  // XXX FIXME XXX -- this doesn't solve the problem of
+	  // FIXME -- this doesn't solve the problem of
 	  //
 	  //   a = 1; a([1,1], [1,1], [1,1])
 	  //
 	  // and similar constructions.  Hmm...
 
-	  // XXX FIXME XXX -- using this constructor avoids narrowing the
+	  // FIXME -- using this constructor avoids narrowing the
 	  // 1x1 matrix back to a scalar value.  Need a better solution
 	  // to this problem.
 
--- a/src/ov-list.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-list.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -114,7 +114,7 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // octave_user_function::subsref.
 
--- a/src/ov-mapper.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-mapper.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -214,7 +214,7 @@
 {
   octave_value retval;
 
-  // XXX FIXME XXX -- is_real_type can return true.  Should it really
+  // FIXME -- is_real_type can return true.  Should it really
   // work that way?
 
   if (arg.is_real_type ()
@@ -348,7 +348,7 @@
     }
   else if (ch_map_fcn)
     {
-      // XXX FIXME XXX -- this could be done in a better way...
+      // FIXME -- this could be done in a better way...
 
       octave_value tmp = arg.convert_to_str ();
 
@@ -415,7 +415,7 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // and octave_builtin::subsref.
 
--- a/src/ov-range.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-range.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -112,13 +112,13 @@
 octave_value
 octave_range::do_index_op (const octave_value_list& idx, int resize_ok)
 {
-  // XXX FIXME XXX -- this doesn't solve the problem of
+  // FIXME -- this doesn't solve the problem of
   //
   //   a = 1:5; a(1, 1, 1)
   //
   // and similar constructions.  Hmm...
 
-  // XXX FIXME XXX -- using this constructor avoids possibly narrowing
+  // FIXME -- using this constructor avoids possibly narrowing
   // the range to a scalar value.  Need a better solution to this
   // problem.
 
@@ -136,7 +136,7 @@
 
   if (nel > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("range", "real scalar");
 
@@ -151,7 +151,7 @@
 octave_value
 octave_range::all (int dim) const
 {
-  // XXX FIXME XXX -- this is a potential waste of memory.
+  // FIXME -- this is a potential waste of memory.
 
   Matrix m = range.matrix_value ();
 
@@ -161,7 +161,7 @@
 octave_value
 octave_range::any (int dim) const
 {
-  // XXX FIXME XXX -- this is a potential waste of memory.
+  // FIXME -- this is a potential waste of memory.
 
   Matrix m = range.matrix_value ();
 
@@ -175,7 +175,7 @@
 
   if (range.nelem () != 0)
     {
-      // XXX FIXME XXX -- this is a potential waste of memory.
+      // FIXME -- this is a potential waste of memory.
 
       Matrix m ((range.matrix_value () . all ()) . all ());
 
@@ -196,7 +196,7 @@
 
   if (nel > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("range", "complex scalar");
 
--- a/src/ov-range.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-range.h	Mon Apr 24 19:13:11 2006 +0000
@@ -145,7 +145,6 @@
 
   bool is_numeric_type (void) const { return true; }
 
-  // XXX DO ME XXX
   bool is_true (void) const;
 
   double double_value (bool = false) const;
@@ -197,7 +196,7 @@
 	     oct_data_conv::data_type output_type, int skip,
 	     oct_mach_info::float_format flt_fmt) const
     {
-      // XXX FIXME XXX -- could be more memory efficient by having a
+      // FIXME -- could be more memory efficient by having a
       // special case of the octave_stream::write method for ranges.
 
       return os.write (matrix_value (), block_size, output_type, skip,
--- a/src/ov-re-mat.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-re-mat.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -81,7 +81,7 @@
 bool
 octave_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
+  // FIXME
   return false;
 }
 
@@ -92,7 +92,7 @@
 
   if (numel () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("real matrix", "real scalar");
 
@@ -104,7 +104,7 @@
   return retval;
 }
 
-// XXX FIXME XXX
+// FIXME
 
 Matrix
 octave_matrix::matrix_value (bool) const
@@ -119,10 +119,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("real matrix", "complex scalar");
 
@@ -134,7 +134,7 @@
   return retval;
 }
 
-// XXX FIXME XXX
+// FIXME
 
 ComplexMatrix
 octave_matrix::complex_matrix_value (bool) const
@@ -170,7 +170,7 @@
 SparseComplexMatrix 
 octave_matrix::sparse_complex_matrix_value (bool) const
 {
-  // XXX FIXME XXX Need a SparseComplexMatrix (Matrix) constructor to make
+  // FIXME Need a SparseComplexMatrix (Matrix) constructor to make
   // this function more efficient. Then this should become
   // return SparseComplexMatrix (matrix.matrix_value ());
   return SparseComplexMatrix (sparse_matrix_value ());
@@ -234,7 +234,7 @@
 
 	      if (ival < 0 || ival > UCHAR_MAX)
 		{
-		  // XXX FIXME XXX -- is there something
+		  // FIXME -- is there something
 		  // better we could do?
 
 		  ival = 0;
@@ -452,7 +452,7 @@
       else
 	st = LS_FLOAT;
     }
-  else if (d.numel () > 8192) // XXX FIXME XXX -- make this configurable.
+  else if (d.numel () > 8192) // FIXME -- make this configurable.
     {
       double max_val, min_val;
       if (m.all_integers (max_val, min_val))
--- a/src/ov-re-sparse.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-re-sparse.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -87,7 +87,7 @@
 bool
 octave_sparse_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
+  // FIXME
   return false;
 }
 
@@ -98,7 +98,7 @@
 
   if (numel () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("real sparse matrix", "real scalar");
 
@@ -117,10 +117,10 @@
 
   Complex retval (tmp, tmp);
 
-  // XXX FIXME XXX -- maybe this should be a function, valid_as_scalar()
+  // FIXME -- maybe this should be a function, valid_as_scalar()
   if (rows () > 0 && columns () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("real sparse matrix", "complex scalar");
 
@@ -222,7 +222,7 @@
 
 		  if (ival < 0 || ival > UCHAR_MAX)
 		    {
-		      // XXX FIXME XXX -- is there something
+		      // FIXME -- is there something
 		      // better we could do?
 
 		      ival = 0;
@@ -283,7 +283,7 @@
       else
 	st = LS_FLOAT;
     }
-  else if (matrix.nzmax () > 8192) // XXX FIXME XXX -- make this configurable.
+  else if (matrix.nzmax () > 8192) // FIXME -- make this configurable.
     {
       double max_val, min_val;
       if (matrix.all_integers (max_val, min_val))
--- a/src/ov-scalar.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-scalar.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -62,13 +62,13 @@
     retval = scalar;
   else
     {
-      // XXX FIXME XXX -- this doesn't solve the problem of
+      // FIXME -- this doesn't solve the problem of
       //
       //   a = 1; a([1,1], [1,1], [1,1])
       //
       // and similar constructions.  Hmm...
 
-      // XXX FIXME XXX -- using this constructor avoids narrowing the
+      // FIXME -- using this constructor avoids narrowing the
       // 1x1 matrix back to a scalar value.  Need a better solution
       // to this problem.
 
@@ -142,7 +142,7 @@
 
       if (ival < 0 || ival > UCHAR_MAX)
 	{
-	  // XXX FIXME XXX -- is there something better we could do?
+	  // FIXME -- is there something better we could do?
 
 	  ival = 0;
 
--- a/src/ov-str-mat.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-str-mat.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -146,7 +146,7 @@
 {
   octave_idx_type len = idx.length ();
 
-  // XXX FIXME XXX
+  // FIXME
   charMatrix tmp = rhs;
   if (tmp.rows () == 1 && tmp.columns () == 0)
     tmp.resize (0, 0);    
@@ -259,7 +259,7 @@
     {
       charMatrix chm = matrix.matrix_value ();
 
-      retval = chm.row_as_string (0);  // XXX FIXME??? XXX
+      retval = chm.row_as_string (0);  // FIXME???
     }
   else
     error ("invalid conversion of charNDArray to string");
@@ -368,7 +368,7 @@
 
 	  if (elements >= 0)
 	    {
-	      // XXX FIXME XXX -- need to be able to get max length
+	      // FIXME -- need to be able to get max length
 	      // before doing anything.
 
 	      charMatrix chm (elements, 0);
--- a/src/ov-streamoff.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-streamoff.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -52,7 +52,7 @@
 
   if (numel () > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (Vwarn_fortran_indexing)
 	gripe_implicit_conversion ("streamoff array", "scalar streamoff");
 
--- a/src/ov-struct.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-struct.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -151,7 +151,7 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // octave_user_function::subsref.
 
@@ -416,7 +416,7 @@
 void
 octave_struct::print_raw (std::ostream& os, bool) const
 {
-  // XXX FIXME XXX -- would be nice to print the output in some
+  // FIXME -- would be nice to print the output in some
   // standard order.  Maybe all substructures first, maybe
   // alphabetize entries, etc.
 
@@ -709,7 +709,7 @@
     {
       retval = false;
 
-      // XXX FIXME XXX -- should this work for all types that can do
+      // FIXME -- should this work for all types that can do
       // structure reference operations?
 
       if (args(0).is_map () && args(1).is_string ())
@@ -821,7 +821,7 @@
 
 	  // Field is either cell or character matrix.
 
-	  // XXX FIXME XX -- this could be simplified if we had
+	  // FIXME -- this could be simplified if we had
 	  // cellstr and iscellstr functions available.
 
 	  bool field_is_cell = field.is_cell ();
@@ -838,7 +838,7 @@
 	    {
 	      // Retrieve the dimension value.
 
-	      // XXX FIX ME XXX --  int_value () should print out the
+	      // FIXME --  int_value () should print out the
 	      // conversions it does to be Matlab compatible.
 
 	      octave_idx_type dim = args(2).int_value () - 1;
--- a/src/ov-typeinfo.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-typeinfo.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -163,7 +163,7 @@
     ? instance->do_register_widening_op (t, t_result, f) : false;
 }
 
-// XXX FIXME XXX -- we should also store all class names and provide a
+// FIXME -- we should also store all class names and provide a
 // way to list them (calling class with nargin == 0?).
 
 int
--- a/src/ov-usr-fcn.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov-usr-fcn.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -124,7 +124,7 @@
     {
       // We really should stash the whole path to the file we found,
       // when we looked it up, to avoid possible race conditions...
-      // XXX FIXME XXX
+      // FIXME
       //
       // We probably also don't need to get the library directory
       // every time, but since this function is only called when the
@@ -211,7 +211,7 @@
 
       if (! error_state)
 	{
-	  // XXX FIXME XXX -- should varargout be required to be a
+	  // FIXME -- should varargout be required to be a
 	  // cell array with a single row or column?  If not, should
 	  // we have a cleaner way of doing this operation?
 
@@ -320,7 +320,7 @@
       panic_impossible ();
     }
 
-  // XXX FIXME XXX -- perhaps there should be an
+  // FIXME -- perhaps there should be an
   // octave_value_list::next_subsref member function?  See also
   // octave_builtin::subsref.
 
--- a/src/ov.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -92,7 +92,7 @@
 // Should we warn about conversions from complex to real?
 int Vwarn_imag_to_real;
 
-// XXX FIXME XXX
+// FIXME
 
 // Octave's value type.
 
@@ -829,7 +829,7 @@
 
   if (op != op_asn_eq)
     {
-      // XXX FIXME XXX -- only do the following stuff if we can't find
+      // FIXME -- only do the following stuff if we can't find
       // a specific function to call to handle the op= operation for
       // the types we have.
 
@@ -877,7 +877,7 @@
     operator = (rhs);
   else
     {
-      // XXX FIXME XXX -- only do the following stuff if we can't find
+      // FIXME -- only do the following stuff if we can't find
       // a specific function to call to handle the op= operation for
       // the types we have.
 
@@ -1142,7 +1142,7 @@
     }
   else if (nr > 0 && nc > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (! force_vector_conversion && Vwarn_fortran_indexing)
 	gripe_implicit_conversion (type_name (), "real vector");
 
@@ -1217,7 +1217,7 @@
     }
   else if (nr > 0 && nc > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (! force_vector_conversion && Vwarn_fortran_indexing)
 	gripe_implicit_conversion (type_name (), "real vector");
 
@@ -1284,7 +1284,7 @@
     }
   else if (nr > 0 && nc > 0)
     {
-      // XXX FIXME XXX -- is warn_fortran_indexing the right variable here?
+      // FIXME -- is warn_fortran_indexing the right variable here?
       if (! force_vector_conversion && Vwarn_fortran_indexing)
 	gripe_implicit_conversion (type_name (), "complex vector");
 
@@ -1669,7 +1669,7 @@
     }
   else
     {
-      // XXX FIXME XXX -- only do the following stuff if we can't find a
+      // FIXME -- only do the following stuff if we can't find a
       // specific function to call to handle the op= operation for the
       // types we have.
 
--- a/src/ov.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/ov.h	Mon Apr 24 19:13:11 2006 +0000
@@ -146,7 +146,7 @@
   octave_value (long int i);
   octave_value (unsigned long int i);
 
-  // XXX FIXME XXX -- these are kluges.  They turn into doubles
+  // FIXME -- these are kluges.  They turn into doubles
   // internally, which will break for very large values.  We just use
   // them to store things like 64-bit ino_t, etc, and hope that those
   // values are never actually larger than can be represented exactly
@@ -873,7 +873,7 @@
 
 extern void install_types (void);
 
-// XXX FIXME XXX -- these trait classes probably belong somehwere else...
+// FIXME -- these trait classes probably belong somehwere else...
 
 template <typename T>
 class
--- a/src/pager.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pager.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -153,7 +153,7 @@
 		}
 	      else
 		{
-		  // XXX FIXME XXX -- omething is not right with the
+		  // FIXME -- omething is not right with the
 		  // pager.  If it died then we should receive a
 		  // signal for that.  If there is some other problem,
 		  // then what?
--- a/src/parse.y	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/parse.y	Mon Apr 24 19:13:11 2006 +0000
@@ -1730,7 +1730,7 @@
 	  e->preserve_base ();
 	  delete e;
 
-	  // XXX FIXME XXX -- need to attempt constant folding here
+	  // FIXME -- need to attempt constant folding here
 	  // too (we need a generic way to do that).
 	  retval = base;
 	}
@@ -1803,7 +1803,7 @@
 static tree_constant *
 make_anon_fcn_handle (tree_parameter_list *param_list, tree_statement *stmt)
 {
-  // XXX FIXME XXX -- need to get these from the location of the @ symbol.
+  // FIXME -- need to get these from the location of the @ symbol.
 
   int l = -1;
   int c = -1;
@@ -1824,7 +1824,7 @@
 
       stmt->set_print_flag (false);
 
-      // XXX FIXME XXX -- would like to delete old_stmt here or
+      // FIXME -- would like to delete old_stmt here or
       // replace expression inside it with the new expression we just
       // created so we don't have to create a new statement at all.
 
@@ -2951,7 +2951,7 @@
 static void
 safe_fclose (void *f)
 {
-  // XXX FIXME XXX -- comments at the end of an input file are
+  // FIXME -- comments at the end of an input file are
   // discarded (otherwise, they would be appended to the next
   // statement, possibly from the command line or another file, which
   // can be quite confusing).
@@ -3047,7 +3047,7 @@
 // comments that are recognized as a copyright notice are saved in the
 // comment buffer.
 
-// XXX FIXME XXX -- grab_help_text() in lex.l duplicates some of this
+// FIXME -- grab_help_text() in lex.l duplicates some of this
 // code!
 
 static std::string
@@ -3292,7 +3292,7 @@
 
       if (! force_script && is_function_file (ffile))
 	{
-	  // XXX FIXME XXX -- we shouldn't need both the
+	  // FIXME -- we shouldn't need both the
 	  // command_history object and the
 	  // Vsaving_history variable...
 	  command_history::ignore_entries ();
@@ -3330,7 +3330,7 @@
 
 	  octave_comment_buffer::append (txt);
 
-	  // XXX FIXME XXX -- this should not be necessary.
+	  // FIXME -- this should not be necessary.
 	  gobble_leading_white_space (ffile, false, true, false);
 
 	  int status = yyparse ();
@@ -3348,7 +3348,7 @@
 	  // proper value when we unwind from this frame.
 	  reading_fcn_file = old_reading_fcn_file_state;
 
-	  // XXX FIXME XXX -- we shouldn't need both the
+	  // FIXME -- we shouldn't need both the
 	  // command_history object and the
 	  // Vsaving_history variable...
 	  command_history::ignore_entries ();
--- a/src/pr-output.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pr-output.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -286,7 +286,7 @@
   return result;
 }
 
-// XXX FIXME XXX -- it would be nice to share more code among these
+// FIXME -- it would be nice to share more code among these
 // functions,..
 
 static void
@@ -1119,10 +1119,10 @@
 	  // Unless explicitly asked for, always print in big-endian
 	  // format.
 
-	  // XXX FIXME XXX -- is it correct to swap bytes for VAX
+	  // FIXME -- is it correct to swap bytes for VAX
 	  // formats and not for Cray?
 
-	  // XXX FIXME XXX -- will bad things happen if we are
+	  // FIXME -- will bad things happen if we are
 	  // interrupted before resetting the format flags and fill
 	  // character?
 
@@ -1156,7 +1156,7 @@
 	  equiv tmp;
 	  tmp.d = d;
 
-	  // XXX FIXME XXX -- is it correct to swap bytes for VAX
+	  // FIXME -- is it correct to swap bytes for VAX
 	  // formats and not for Cray?
 
 	  oct_mach_info::float_format flt_fmt =
@@ -1931,7 +1931,7 @@
 void
 octave_print_internal (std::ostream& os, const charMatrix& chm,
 		       bool pr_as_read_syntax,
-		       int /* extra_indent XXX FIXME XXX */,
+		       int /* extra_indent FIXME */,
 		       bool pr_as_string)
 {
   if (pr_as_string)
@@ -2007,7 +2007,7 @@
 octave_print_internal (std::ostream& os, const ArrayN<std::string>& nda,
 		       bool pr_as_read_syntax, int /* extra_indent */)
 {
-  // XXX FIXME XXX -- this mostly duplicates the code in the
+  // FIXME -- this mostly duplicates the code in the
   // PRINT_ND_ARRAY macro.
 
   if (nda.is_empty ())
@@ -2065,7 +2065,7 @@
 
 	  Array2<std::string> page (nda.index (idx), nr, nc);
 
-	  // XXX FIXME XXX -- need to do some more work to put these
+	  // FIXME -- need to do some more work to put these
 	  // in neatly aligned columns...
 
 	  octave_idx_type n_rows = page.rows ();
@@ -2182,7 +2182,7 @@
 octave_print_internal (std::ostream& os, const intNDArray<T>& nda,
 		       bool pr_as_read_syntax, int extra_indent)
 {
-  // XXX FIXME XXX -- this mostly duplicates the code in the
+  // FIXME -- this mostly duplicates the code in the
   // PRINT_ND_ARRAY macro.
 
   if (nda.is_empty ())
@@ -2399,7 +2399,7 @@
     }
 }
 
-// XXX FIXME XXX -- this is not the right spot for this...
+// FIXME -- this is not the right spot for this...
 
 template void
 pr_int (std::ostream&, const octave_int8&, int);
@@ -2474,7 +2474,7 @@
     }
 }
 
-// XXX FIXME XXX -- this is not the right spot for this...
+// FIXME -- this is not the right spot for this...
 
 template void
 octave_print_internal (std::ostream&, const octave_int8&, bool);
--- a/src/pt-arg-list.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-arg-list.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -86,7 +86,7 @@
     {
       tree_expression *elt = *p;
 
-      // XXX FIXME XXX -- need to be able to determine whether elt is
+      // FIXME -- need to be able to determine whether elt is
       // an expression that could evaluate to a cs-list object, and if
       // so, how many elements are in that list.  Ugly!
 
@@ -178,7 +178,7 @@
 
   int len = length ();
 
-  // XXX FIXME XXX -- would be nice to know in advance how largs args
+  // FIXME -- would be nice to know in advance how largs args
   // needs to be even when we have a list containing an all_va_args
   // token.
 
--- a/src/pt-assign.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-assign.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -69,7 +69,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- this works, but it would look a little better if
+// FIXME -- this works, but it would look a little better if
 // it were broken up into a couple of separate functions.
 
 octave_value
@@ -196,7 +196,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- this works, but it would look a little better if
+// FIXME -- this works, but it would look a little better if
 // it were broken up into a couple of separate functions.
 
 octave_value_list
--- a/src/pt-except.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-except.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -173,7 +173,7 @@
   // The unwind_protects are popped off the stack in the reverse of
   // the order they are pushed on.
 
-  // XXX FIXME XXX -- these statements say that if we see a break or
+  // FIXME -- these statements say that if we see a break or
   // return statement in the cleanup block, that we want to use the
   // new value of the breaking or returning flag instead of restoring
   // the previous value.  Is that the right thing to do?  I think so.
--- a/src/pt-id.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-id.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -159,7 +159,7 @@
     {
       if (val.is_defined ())
 	{
-	  // XXX GAGME XXX -- this would be cleaner if we required
+	  // GAGME -- this would be cleaner if we required
 	  // parens to indicate function calls.
 	  //
 	  // If this identifier refers to a function, we need to know
--- a/src/pt-idx.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-idx.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -215,7 +215,7 @@
 {
   int n = args.size ();
 
-  // XXX FIXME XXX -- why not just make these Cell objects?
+  // FIXME -- why not just make these Cell objects?
   octave_value_list subs_list (n, octave_value ());
   octave_value_list type_list (n, octave_value ());
 
--- a/src/pt-loop.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-loop.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -379,7 +379,7 @@
 	if (error_state)
 	  goto cleanup;
 
-	// XXX FIXME XXX -- maybe we need a function for this?
+	// FIXME -- maybe we need a function for this?
 	int ndims = dv.length ();
 	for (int i = 2; i < ndims; i++)
 	  dv(1) *= dv(i);
@@ -431,7 +431,7 @@
 
 	dim_vector dv = c_tmp.dims ();
 
-	// XXX FIXME XXX -- maybe we need a function for this?
+	// FIXME -- maybe we need a function for this?
 	int ndims = dv.length ();
 	for (int i = 2; i < ndims; i++)
 	  dv(1) *= dv(i);
--- a/src/pt-select.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-select.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -122,7 +122,7 @@
 
 
 // Compare two octave values, returning true if equal, false if not
-// XXX FIXME XXX --- should be member or friend of octave_value class.
+// FIXME --- should be member or friend of octave_value class.
 
 static bool
 equal (const octave_value& val, const octave_value& test)
--- a/src/pt-stmt.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/pt-stmt.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -104,12 +104,12 @@
 	{
 	  expr->set_print_flag (pf);
 
-	  // XXX FIXME XXX -- maybe all of this should be packaged in
+	  // FIXME -- maybe all of this should be packaged in
 	  // one virtual function that returns a flag saying whether
 	  // or not the expression will take care of binding ans and
 	  // printing the result.
 
-	  // XXX FIXME XXX -- it seems that we should just have to
+	  // FIXME -- it seems that we should just have to
 	  // call expr->rvalue () and that should take care of
 	  // everything, binding ans as necessary?
 
--- a/src/sighandlers.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/sighandlers.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -201,7 +201,7 @@
 #endif
     }
 #if defined (SA_RESTART)
-  // XXX FIXME XXX -- Do we also need to explicitly disable SA_RESTART?
+  // FIXME -- Do we also need to explicitly disable SA_RESTART?
   else if (restart_syscalls)
     act.sa_flags |= SA_RESTART;
 #endif
@@ -488,7 +488,7 @@
 
   // Return TRUE if the event was handled, or FALSE if another handler 
   // should be called.
-  // XXX FIXME XXX check that windows terminates the thread.
+  // FIXME check that windows terminates the thread.
   return TRUE;
 }
 #endif /* w32_sigint_handler */
--- a/src/sighandlers.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/sighandlers.h	Mon Apr 24 19:13:11 2006 +0000
@@ -76,7 +76,7 @@
 
 typedef RETSIGTYPE sig_handler (int);
 
-// XXX FIXME XXX -- the data should probably be private...
+// FIXME -- the data should probably be private...
 
 struct
 octave_interrupt_handler
--- a/src/sparse-xpow.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/sparse-xpow.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -214,7 +214,7 @@
 //
 //   * -> not needed.
 
-// XXX FIXME XXX -- these functions need to be fixed so that things
+// FIXME -- these functions need to be fixed so that things
 // like
 //
 //   a = -1; b = [ 0, 0.5, 1 ]; r = a .^ b
@@ -300,7 +300,7 @@
 octave_value
 elem_xpow (const SparseMatrix& a, double b)
 {
-  // XXX FIXME XXX What should a .^ 0 give?? Matlab gives a 
+  // FIXME What should a .^ 0 give?? Matlab gives a 
   // sparse matrix with same structure as a, which is strictly
   // incorrect. Keep compatiability.
 
@@ -317,7 +317,7 @@
 	{
 	  ComplexMatrix result (nr, nc, Complex (pow (0.0, b)));
 
-	  // XXX FIXME XXX -- avoid apparent GNU libm bug by
+	  // FIXME -- avoid apparent GNU libm bug by
 	  // converting A and B to complex instead of just A.
 	  Complex btmp (b);
 
@@ -355,7 +355,7 @@
 	{
 	  OCTAVE_QUIT;
 
-	  // XXX FIXME XXX -- avoid apparent GNU libm bug by
+	  // FIXME -- avoid apparent GNU libm bug by
 	  // converting A and B to complex instead of just A.
 
 	  Complex atmp (a.data (i));
--- a/src/symtab.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/symtab.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -475,7 +475,7 @@
 //   mat is a 12x3 matrix
 //            ^^^^ => 4 columns
 //
-// XXX FIXME XXX -- why not just use the dim_vector::str () method?
+// FIXME -- why not just use the dim_vector::str () method?
 
 int
 symbol_record::dimensions_string_req_total_space (int print_dims) const
@@ -492,7 +492,7 @@
 // Make the dimensions-string.  For example: mat is a 2x3 matrix.
 //                                                    ^^^
 //
-// XXX FIXME XXX -- why not just use the dim_vector::str () method?
+// FIXME -- why not just use the dim_vector::str () method?
 
 std::string
 symbol_record::make_dimensions_string (int print_dims) const
@@ -797,7 +797,7 @@
 	 new_name.c_str ());
 }
 
-// XXX FIXME XXX -- it would be nice to eliminate a lot of the
+// FIXME -- it would be nice to eliminate a lot of the
 // following duplicate code.
 
 void
@@ -1404,7 +1404,7 @@
 
 	  idx += cmd.length ();
 
-	  // XXX FIXME XXX -- use iostream functions instead of sscanf!
+	  // FIXME -- use iostream functions instead of sscanf!
 
 	  if (cmd.find_first_of ("crl") != 1)
 	    items = sscanf (cmd.c_str (), "%c%c:%d:%d:%d:%d;",
@@ -1539,7 +1539,7 @@
 
   if (show_verbose)
     {
-      // XXX FIXME XXX Should separate argv to lists with and without dots.
+      // FIXME Should separate argv to lists with and without dots.
       Array<symbol_record *> xsymbols = symbol_list (argv, type, scope);
       Array<symbol_record *> xsubsymbols = subsymbol_list (argv, type, scope);
 
--- a/src/symtab.h	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/symtab.h	Mon Apr 24 19:13:11 2006 +0000
@@ -155,7 +155,7 @@
     bool is_dld_function (void) const
       { return (symbol_type & symbol_record::DLD_FUNCTION); }
 
-    // XXX FIXME XXX
+    // FIXME
     bool is_map_element (const std::string& /* elts */) const
       { return false; }
 
@@ -275,7 +275,7 @@
       visible (true), nm (), chg_fcn (0),
       definition (new symbol_def ()), next_elem (0) { }
 
-  // XXX FIXME XXX -- kluge alert!  We obviously need a better way of
+  // FIXME -- kluge alert!  We obviously need a better way of
   // handling allow_shadow!
 
   symbol_record (const std::string& n, symbol_record *nxt)
--- a/src/syscalls.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/syscalls.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -297,7 +297,7 @@
 
 	  if (! error_state)
 	    {
-	      // XXX FIXME XXX -- Need better checking here?
+	      // FIXME -- Need better checking here?
 	      if (fid < 0)
 		error ("fcntl: invalid file id");
 	      else
--- a/src/sysdep.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/sysdep.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -113,7 +113,7 @@
   // Let the user close the console window or shutdown without the
   // pesky dialog.
   //
-  // XXX FIXME XXX -- should this be user configurable?
+  // FIXME -- should this be user configurable?
   SetProcessShutdownParameters (0x280, SHUTDOWN_NORETRY);
 #endif
 }
@@ -517,7 +517,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- perhaps kbhit should also be able to print a prompt?
+// FIXME -- perhaps kbhit should also be able to print a prompt?
 
 DEFUN (kbhit, args, ,
   "-*- texinfo -*-\n\
@@ -544,7 +544,7 @@
 {
   octave_value retval;
 
-  // XXX FIXME XXX -- add timeout and default value args?
+  // FIXME -- add timeout and default value args?
 
   if (interactive || forced_interactive)
     {
@@ -676,7 +676,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- maybe this should only return 1 if IEEE floating
+// FIXME -- maybe this should only return 1 if IEEE floating
 // point functions really work.
 
 DEFUN (isieee, , ,
--- a/src/toplev.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/toplev.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -412,7 +412,7 @@
 	{
 	  std::ostringstream output_buf;
 
-	  // XXX FIXME XXX -- Perhaps we should read more than one
+	  // FIXME -- Perhaps we should read more than one
 	  // character at a time and find a way to avoid the call to
 	  // octave_usleep as well?
 
@@ -549,7 +549,7 @@
 		error ("system: fork failed -- can't create child process");
 	      else if (pid == 0)
 		{
-		  // XXX FIXME XXX -- should probably replace this
+		  // FIXME -- should probably replace this
 		  // call with something portable.
 
 		  execl ("/bin/sh", "sh", "-c", cmd_str.c_str (),
@@ -591,7 +591,7 @@
 
 DEFALIAS (shell_cmd, system);
 
-// XXX FIXME XXX -- this should really be static, but that causes
+// FIXME -- this should really be static, but that causes
 // problems on some systems.
 std::stack<std::string> octave_atexit_functions;
 
@@ -619,7 +619,7 @@
 
       command_editor::restore_terminal_state ();
 
-      // XXX FIXME XXX -- is this needed?  Can it cause any trouble?
+      // FIXME -- is this needed?  Can it cause any trouble?
       raw_mode (0);
 
       octave_history_write_timestamp ();
--- a/src/unwind-prot.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/unwind-prot.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -137,7 +137,7 @@
       break;
 
     case generic:
-      // XXX FIXME XXX
+      // FIXME
       // delete [] gen_ptr_value;
       break;
 
--- a/src/utils.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/utils.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -968,7 +968,7 @@
   return retval;
 }
 
-/* XXX FIXME XXX -- we really need a configure test for this.  */
+/* FIXME -- we really need a configure test for this.  */
 
 #if defined __GNUC__ && __GNUC__ >= 3
 #define HAVE_C99_VSNPRINTF 1
--- a/src/variables.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/variables.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -677,7 +677,7 @@
   return names;
 }
 
-// XXX FIXME XXX -- this will have to be much smarter to work
+// FIXME -- this will have to be much smarter to work
 // "correctly".
 
 bool
@@ -1030,7 +1030,7 @@
 
 		  std::string nm = fcn->name ();
 
-		  // XXX FIXME XXX -- the following code is repeated
+		  // FIXME -- the following code is repeated
 		  // in load_fcn_from_file in parse.y.
 
 		  string_vector names (2);
@@ -1079,7 +1079,7 @@
 			    {
 			      // OK, swap the aliases around.
 
-			      // XXX FIXME XXX -- this is a bit
+			      // FIXME -- this is a bit
 			      // tricky, so maybe some refactoring is
 			      // in order here too...
 
@@ -1457,7 +1457,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- this function is duplicated in symtab.cc with the
+// FIXME -- this function is duplicated in symtab.cc with the
 // name maybe_list_cmp_fcn.
 
 static int
@@ -1533,7 +1533,7 @@
 
   if (return_list)
     {
-      // XXX FIXME XXX -- maybe symbol_list should return a std::list
+      // FIXME -- maybe symbol_list should return a std::list
       // object instead of an Array.
 
       dim_vector dv (0, 0);
@@ -2164,7 +2164,7 @@
 static inline bool
 do_clear_symbol_pattern (const std::string& pat)
 {
-  // XXX FIXME XXX -- if we have a variable v1 and a function v2 and
+  // FIXME -- if we have a variable v1 and a function v2 and
   // someone says clear v*, we will clear the variable but not the
   // function.  Is that really what should happen?  (I think it is
   // what Matlab does.)
@@ -2301,7 +2301,7 @@
     {
       if (exclusive)
 	{
-	  // XXX FIXME XXX -- is this really what we want, or do we
+	  // FIXME -- is this really what we want, or do we
 	  // somehow want to only clear the functions that are not
 	  // shadowed by local variables?  It seems that would be a
 	  // bit harder to do.
@@ -2606,7 +2606,7 @@
   return retval;
 }
 
-// XXX FIXME XXX -- some of these should do their own checking to be
+// FIXME -- some of these should do their own checking to be
 // able to provide more meaningful warning or error messages.
 
 static int
@@ -2629,7 +2629,7 @@
   return 0;
 }
 
-// XXX FIXME XXX -- there still may be better places for some of these
+// FIXME -- there still may be better places for some of these
 // to be defined.
 
 void
--- a/src/xpow.cc	Mon Apr 24 17:45:31 2006 +0000
+++ b/src/xpow.cc	Mon Apr 24 19:13:11 2006 +0000
@@ -182,7 +182,7 @@
 	  else
 	    {
 	      // Too much copying?
-	      // XXX FIXME XXX -- we shouldn't do this if the exponent is
+	      // FIXME -- we shouldn't do this if the exponent is
 	      // large...
 
 	      Matrix atmp;
@@ -378,7 +378,7 @@
 	  else
 	    {
 	      // Too much copying?
-	      // XXX FIXME XXX -- we shouldn't do this if the exponent is
+	      // FIXME -- we shouldn't do this if the exponent is
 	      // large...
 
 	      ComplexMatrix atmp;
@@ -477,7 +477,7 @@
 //
 //   * -> not needed.
 
-// XXX FIXME XXX -- these functions need to be fixed so that things
+// FIXME -- these functions need to be fixed so that things
 // like
 //
 //   a = -1; b = [ 0, 0.5, 1 ]; r = a .^ b
@@ -875,7 +875,7 @@
 //
 //   * -> not needed.
 
-// XXX FIXME XXX -- these functions need to be fixed so that things
+// FIXME -- these functions need to be fixed so that things
 // like
 //
 //   a = -1; b = [ 0, 0.5, 1 ]; r = a .^ b
--- a/test/octave.test/linalg/qr-2.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/octave.test/linalg/qr-2.m	Mon Apr 24 19:13:11 2006 +0000
@@ -1,6 +1,6 @@
 a = [0, 2, 1; 2, 1, 2];
 
-[q, r, p] = qr (a);  # not giving right dimensions. XXX FIXME XXX
+[q, r, p] = qr (a);  # not giving right dimensions. FIXME
 
 [qe, re, pe] = qr (a, 0);
 
--- a/test/test_error.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_error.m	Mon Apr 24 19:13:11 2006 +0000
@@ -20,7 +20,7 @@
 %% test/octave.test/error/error-4.m
 %!error <foo> error ("foo\n");
 
-%% XXX FIXME XXX Why can't I use %!warning <foo> f;
+%% FIXME Why can't I use %!warning <foo> f;
 %% test/octave.test/error/warning-1.m
 %!function g ()
 %! warning ("foo");
@@ -41,7 +41,7 @@
 %! assert(warning ("query","backtrace"),st);
 %! warning (ws.state,"backtrace");
 
-%% XXX FIXME XXX This test no longer makes sense with new warning syntax
+%% FIXME This test no longer makes sense with new warning syntax
 %% test/octave.test/error/warning-3.m
 %!#warning <foo> warning ("foo", 1);
 
--- a/test/test_eval-catch.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_eval-catch.m	Mon Apr 24 19:13:11 2006 +0000
@@ -13,7 +13,7 @@
 %! eval ("clear a; a; x = 0;", "x = 1;");
 %! assert (x, 1);
 
-%% XXX FIXME XXX This is redundant with the changes to the above
+%% FIXME This is redundant with the changes to the above
 %% test/octave.test/eval-catch/eval-catch-4.m
 
 %% test/octave.test/eval-catch/eval-catch-5.m
--- a/test/test_eval.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_eval.m	Mon Apr 24 19:13:11 2006 +0000
@@ -15,7 +15,7 @@
 %! x = 1;
 %! assert(eval ("x;"),1);
 
-%% XXX FIXME XXX
+%% FIXME
 %% Disable this test as adding the ";" is redundant with eval-1 and
 %% in any case is a syntax error with assert
 %% test/octave.test/eval/eval-4.m
--- a/test/test_io.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_io.m	Mon Apr 24 19:13:11 2006 +0000
@@ -188,7 +188,7 @@
 %! 
 %! assert(save_status && load_status);
 
-%% XXX FIXME XXX Disable this test as it writes to stdout and there is no easy
+%% FIXME Disable this test as it writes to stdout and there is no easy
 %% way to recover output. Need to spawn new octave process and pipe stdout
 %% somewhere to treat this case
 %% test/octave.test/io/puts-1.m
@@ -514,7 +514,7 @@
 %% test/octave.test/io/feof-3.m
 %!error feof ("foo");
 
-%% XXX FIXME XXX trimerr in test.m finds and strips ".*ferror:"!!
+%% FIXME trimerr in test.m finds and strips ".*ferror:"!!
 %% So use fail for the next two tests instead.
 %% test/octave.test/io/ferror-1.m
 %!test
--- a/test/test_linalg.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_linalg.m	Mon Apr 24 19:13:11 2006 +0000
@@ -178,7 +178,7 @@
 %!test
 %! a = [0, 2, 1; 2, 1, 2];
 %! 
-%! [q, r, p] = qr (a);  # not giving right dimensions. XXX FIXME XXX
+%! [q, r, p] = qr (a);  # not giving right dimensions. FIXME
 %! 
 %! [qe, re, pe] = qr (a, 0);
 %! 
--- a/test/test_prefer.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_prefer.m	Mon Apr 24 19:13:11 2006 +0000
@@ -95,7 +95,7 @@
 %! a(1) = 1; a(2) = 2;
 %! assert(all (a == [1,2]));
 
-%% XXX FIXME XXX How the hell do I test this one in test/assert 
+%% FIXME How the hell do I test this one in test/assert 
 %% test/octave.test/prefer/prefer-19.m
 %!#test
 %! pid = print_answer_id_name
@@ -103,7 +103,7 @@
 %! a = 1
 %! print_answer_id_name = pid;
 
-%% XXX FIXME XXX How the hell do I test this one in test/assert 
+%% FIXME How the hell do I test this one in test/assert 
 %% test/octave.test/prefer/prefer-20.m
 %!#test
 %! pid = print_answer_id_name
@@ -136,7 +136,7 @@
 %% test/octave.test/prefer/prefer-24.m
 %!assert(all (svd ([]) == zeros (0, 1)));
 
-%% XXX FIXME XXX return_last_computed_value no longer exists!!
+%% FIXME return_last_computed_value no longer exists!!
 %% Remove the next two tests
 %% test/octave.test/prefer/prefer-25.m
 %% test/octave.test/prefer/prefer-26.m
@@ -167,7 +167,7 @@
 %! assert(x,3.1416);
 %! save_precision = sp;
 
-%% XXX FIXME XXX Same problem as above!!!
+%% FIXME Same problem as above!!!
 %% test/octave.test/prefer/prefer-29.m
 %!function f ()
 %! 1
@@ -178,7 +178,7 @@
 %! assert(??);
 %! silent_functions = sf;
 
-%% XXX FIXME XXX Same problem as above!!!
+%% FIXME Same problem as above!!!
 %% test/octave.test/prefer/prefer-30.m
 %!function f ()
 %! 1
--- a/test/test_string.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_string.m	Mon Apr 24 19:13:11 2006 +0000
@@ -93,7 +93,7 @@
 %! endif
 %! assert(prog_output_assert("ok"));
 
-%% XXX FIXME XXX
+%% FIXME
 %% Why do the next two tests fail?
 %% test/octave.test/string/string_fill_char-1.m
 %!#test
--- a/test/test_system.m	Mon Apr 24 17:45:31 2006 +0000
+++ b/test/test_system.m	Mon Apr 24 19:13:11 2006 +0000
@@ -251,7 +251,7 @@
 %! assert(!rmdir ("foo", "s"));
 %! confirm_recursive_rmdir = crr;
 
-%% XXX FIXME XXX This test messes up the path it seems!! Why?
+%% FIXME This test messes up the path it seems!! Why?
 %% test/octave.test/system/umask-1.m
 %!#test
 %! umask (0);