changeset 3769:7c8e3c42ed04

[project @ 2001-01-31 22:15:51 by jwe]
author jwe
date Wed, 31 Jan 2001 22:15:55 +0000
parents 243148f6c91c
children bf6116ca10eb
files ChangeLog Makeconf.in aclocal.m4 configure.in liboctave/CColVector.cc liboctave/CDiagMatrix.cc liboctave/CMatrix.cc liboctave/CRowVector.cc liboctave/ChangeLog liboctave/boolMatrix.cc liboctave/chMatrix.cc liboctave/dColVector.cc liboctave/dDiagMatrix.cc liboctave/dMatrix.cc liboctave/dRowVector.cc liboctave/file-ops.cc liboctave/mx-inlines.cc liboctave/mx-op-defs.h src/help.cc src/load-save.cc src/pr-output.cc src/pt-pr-code.cc src/utils.cc
diffstat 23 files changed, 173 insertions(+), 111 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Jan 29 18:05:34 2001 +0000
+++ b/ChangeLog	Wed Jan 31 22:15:55 2001 +0000
@@ -1,3 +1,12 @@
+2001-01-31  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* Makeconf.in (%.d : %.cc): Strip the directory portion of the
+	target.
+	(%.d : %.c): Likewise.
+
+	* aclocal.m4 (OCTAVE_CXX_ISO_COMPLIANT_LIBRARY): New macro.
+	* configure.in: Use it.
+
 2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
 	* Makeconf.in (do-subst-config-vals): Substitute
--- a/Makeconf.in	Mon Jan 29 18:05:34 2001 +0000
+++ b/Makeconf.in	Wed Jan 31 22:15:55 2001 +0000
@@ -301,7 +301,8 @@
 	@echo making $@ from $<
 	@rm -f $@
 	@$(CXX) -M $(CPPFLAGS) $(ALL_CXXFLAGS) $< | \
-	  sed -e 's,$*\.o,pic/& & $@,g' > $@.tmp
+	  sed -e 's,^[^:]*/\(.*\.o\):,\1:,' \
+	      -e 's,$*\.o,pic/& & $@,g' > $@.tmp
 	@mv $@.tmp $@
 
 # And one for .c files.too:
@@ -310,7 +311,8 @@
 	@echo making $@ from $<
 	@rm -f $@
 	@$(CC) -M $(CPPFLAGS) $(ALL_CFLAGS) $< | \
-	  sed -e 's,$*\.o,pic/& & $@,g' > $@.tmp
+	  sed -e 's,^[^:]*/\(.*\.o\):,\1:,' \
+	      -e 's,$*\.o,pic/& & $@,g' > $@.tmp
 	@mv $@.tmp $@
 
 define do-subdir-for-command
--- a/aclocal.m4	Mon Jan 29 18:05:34 2001 +0000
+++ b/aclocal.m4	Wed Jan 31 22:15:55 2001 +0000
@@ -931,3 +931,40 @@
     AC_DEFINE(CXX_PREPENDS_UNDERSCORE)
   fi
 ])
+dnl
+dnl See if the C++ library is ISO compliant.
+dnl FIXME: This is obviously very simplistic, and trivially fooled.
+dnl
+dnl OCTAVE_CXX_ISO_COMPLIANT_LIBRARY
+AC_DEFUN(OCTAVE_CXX_ISO_COMPLIANT_LIBRARY, [
+  AC_REQUIRE([AC_PROG_CXX])
+  AC_MSG_CHECKING([if C++ library is ISO compliant])
+  AC_CACHE_VAL(octave_cv_cxx_iso_compliant_library, [
+    AC_LANG_SAVE
+    AC_LANG_CPLUSPLUS
+    rm -f conftest.h
+    for inc in algorithm bitset cassert cctype cerrno cfloat ciso646 \
+	climits clocale cmath complex csetjmp csignal cstdarg cstddef \
+	cstdio cstdlib cstring ctime cwchar cwctype deque exception \
+	fstream functional iomanip ios iosfwd iostream istream iterator \
+	limits list locale map memory new numeric ostream queue set \
+	sstream stack stdexcept streambuf string strstream typeinfo \
+	utility valarray vector; do
+      echo "#include <$inc>" >> conftest.h
+    done
+    AC_TRY_LINK([#include "conftest.h"], [
+        std::bitset<50> flags;
+        flags.set();
+        int digits = std::numeric_limits<unsigned long>::digits;
+        digits = 0;
+      ],
+      octave_cv_cxx_iso_compliant_library=yes,
+      octave_cv_cxx_iso_compliant_library=no
+    )
+    AC_LANG_RESTORE
+  ])
+  AC_MSG_RESULT($octave_cv_cxx_iso_compliant_library)
+  if test $octave_cv_cxx_iso_compliant_library = yes; then
+    AC_DEFINE(CXX_ISO_COMPLIANT_LIBRARY)
+  fi
+])
--- a/configure.in	Mon Jan 29 18:05:34 2001 +0000
+++ b/configure.in	Wed Jan 31 22:15:55 2001 +0000
@@ -21,7 +21,7 @@
 ### Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 ### 02111-1307, USA. 
 
-AC_REVISION($Revision: 1.337 $)
+AC_REVISION($Revision: 1.338 $)
 AC_PREREQ(2.9)
 AC_INIT(src/octave.cc)
 AC_CONFIG_HEADER(config.h)
@@ -199,6 +199,7 @@
 AC_SUBST(CXX_VERSION)
 
 OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL
+OCTAVE_CXX_ISO_COMPLIANT_LIBRARY
 
 ### See which C compiler to use (we expect to find gcc).
 
--- a/liboctave/CColVector.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/CColVector.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -63,7 +63,7 @@
   int len = length ();
   if (len != a.length ())
     return 0;
-  return equal (data (), a.data (), len);
+  return mx_inline_equal (data (), a.data (), len);
 }
 
 bool
@@ -188,7 +188,7 @@
 ComplexColumnVector::hermitian (void) const
 {
   int len = length ();
-  return ComplexRowVector (conj_dup (data (), len), len);
+  return ComplexRowVector (mx_inline_conj_dup (data (), len), len);
 }
 
 ComplexRowVector
@@ -203,7 +203,7 @@
   int a_len = a.length ();
   ComplexColumnVector retval;
   if (a_len > 0)
-    retval = ComplexColumnVector (conj_dup (a.data (), a_len), a_len);
+    retval = ComplexColumnVector (mx_inline_conj_dup (a.data (), a_len), a_len);
   return retval;
 }
 
@@ -244,7 +244,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  add2 (d, a.data (), len);
+  mx_inline_add2 (d, a.data (), len);
   return *this;
 }
 
@@ -266,7 +266,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  subtract2 (d, a.data (), len);
+  mx_inline_subtract2 (d, a.data (), len);
   return *this;
 }
 
--- a/liboctave/CDiagMatrix.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/CDiagMatrix.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -51,7 +51,7 @@
   if (rows () != a.rows () || cols () != a.cols ())
     return 0;
 
-  return equal (data (), a.data (), length ());
+  return mx_inline_equal (data (), a.data (), length ());
 }
 
 bool
@@ -237,13 +237,15 @@
 ComplexDiagMatrix
 ComplexDiagMatrix::hermitian (void) const
 {
-  return ComplexDiagMatrix (conj_dup (data (), length ()), cols (), rows ());
+  return ComplexDiagMatrix (mx_inline_conj_dup (data (), length ()),
+			    cols (), rows ());
 }
 
 ComplexDiagMatrix
 ComplexDiagMatrix::transpose (void) const
 {
-  return ComplexDiagMatrix (dup (data (), length ()), cols (), rows ());
+  return ComplexDiagMatrix (mx_inline_dup (data (), length ()),
+			    cols (), rows ());
 }
 
 ComplexDiagMatrix
@@ -252,7 +254,7 @@
   ComplexDiagMatrix retval;
   int a_len = a.length ();
   if (a_len > 0)
-    retval = ComplexDiagMatrix (conj_dup (a.data (), a_len),
+    retval = ComplexDiagMatrix (mx_inline_conj_dup (a.data (), a_len),
 				a.rows (), a.cols ());
   return retval;
 }
@@ -414,7 +416,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  add2 (d, a.data (), length ());
+  mx_inline_add2 (d, a.data (), length ());
   return *this;
 }
 
--- a/liboctave/CMatrix.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/CMatrix.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -194,7 +194,7 @@
   if (rows () != a.rows () || cols () != a.cols ())
     return false;
 
-  return equal (data (), a.data (), length ());
+  return mx_inline_equal (data (), a.data (), length ());
 }
 
 bool
@@ -742,8 +742,8 @@
   int a_len = a.length ();
   ComplexMatrix retval;
   if (a_len > 0)
-    retval = ComplexMatrix (conj_dup (a.data (), a_len), a.rows (),
-			    a.cols ());
+    retval = ComplexMatrix (mx_inline_conj_dup (a.data (), a_len),
+			    a.rows (), a.cols ());
   return retval;
 }
 
@@ -2023,7 +2023,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  add2 (d, a.data (), length ());
+  mx_inline_add2 (d, a.data (), length ());
   return *this;
 }
 
@@ -2047,7 +2047,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  subtract2 (d, a.data (), length ());
+  mx_inline_subtract2 (d, a.data (), length ());
   return *this;
 }
 
--- a/liboctave/CRowVector.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/CRowVector.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -63,7 +63,7 @@
   int len = length ();
   if (len != a.length ())
     return 0;
-  return equal (data (), a.data (), len);
+  return mx_inline_equal (data (), a.data (), len);
 }
 
 bool
@@ -188,7 +188,7 @@
 ComplexRowVector::hermitian (void) const
 {
   int len = length ();
-  return ComplexColumnVector (conj_dup (data (), len), len);
+  return ComplexColumnVector (mx_inline_conj_dup (data (), len), len);
 }
 
 ComplexColumnVector
@@ -203,7 +203,7 @@
   int a_len = a.length ();
   ComplexRowVector retval;
   if (a_len > 0)
-    retval = ComplexRowVector (conj_dup (a.data (), a_len), a_len);
+    retval = ComplexRowVector (mx_inline_conj_dup (a.data (), a_len), a_len);
   return retval;
 }
 
@@ -244,7 +244,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  add2 (d, a.data (), len);
+  mx_inline_add2 (d, a.data (), len);
   return *this;
 }
 
@@ -266,7 +266,7 @@
 
   Complex *d = fortran_vec (); // Ensures only one reference to my privates!
 
-  subtract2 (d, a.data (), len);
+  mx_inline_subtract2 (d, a.data (), len);
   return *this;
 }
 
--- a/liboctave/ChangeLog	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/ChangeLog	Wed Jan 31 22:15:55 2001 +0000
@@ -1,3 +1,11 @@
+2001-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc, help.cc, load-save.cc, pr-output.cc, utils.cc:
+	Add std:: namespace qualifier as needed.
+
+	* mx-inlines.cc: Rename all functions with mx_inline_ prefix.
+	Change all uses to match.
+
 2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
 	* lo-cutils.c: Don't delcare strptime.
--- a/liboctave/boolMatrix.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/boolMatrix.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -44,7 +44,7 @@
   if (rows () != a.rows () || cols () != a.cols ())
     return 0;
 
-  return equal (data (), a.data (), length ());
+  return mx_inline_equal (data (), a.data (), length ());
 }
 
 bool
--- a/liboctave/chMatrix.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/chMatrix.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -93,7 +93,7 @@
   if (rows () != a.rows () || cols () != a.cols ())
     return 0;
 
-  return equal (data (), a.data (), length ());
+  return mx_inline_equal (data (), a.data (), length ());
 }
 
 bool
--- a/liboctave/dColVector.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/dColVector.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -56,7 +56,7 @@
   int len = length ();
   if (len != a.length ())
     return 0;
-  return equal (data (), a.data (), len);
+  return mx_inline_equal (data (), a.data (), len);
 }
 
 bool
@@ -132,7 +132,7 @@
   int a_len = a.length ();
   ColumnVector retval;
   if (a_len > 0)
-    retval = ColumnVector (real_dup (a.data (), a_len), a_len);
+    retval = ColumnVector (mx_inline_real_dup (a.data (), a_len), a_len);
   return retval;
 }
 
@@ -142,7 +142,7 @@
   int a_len = a.length ();
   ColumnVector retval;
   if (a_len > 0)
-    retval = ColumnVector (imag_dup (a.data (), a_len), a_len);
+    retval = ColumnVector (mx_inline_imag_dup (a.data (), a_len), a_len);
   return retval;
 }
 
--- a/liboctave/dDiagMatrix.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/dDiagMatrix.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -44,7 +44,7 @@
   if (rows () != a.rows () || cols () != a.cols ())
     return 0;
 
-  return equal (data (), a.data (), length ());
+  return mx_inline_equal (data (), a.data (), length ());
 }
 
 bool
@@ -143,7 +143,7 @@
 DiagMatrix
 DiagMatrix::transpose (void) const
 {
-  return DiagMatrix (dup (data (), length ()), cols (), rows ());
+  return DiagMatrix (mx_inline_dup (data (), length ()), cols (), rows ());
 }
 
 DiagMatrix
@@ -152,7 +152,7 @@
   DiagMatrix retval;
   int a_len = a.length ();
   if (a_len > 0)
-    retval = DiagMatrix (real_dup (a.data (), a_len), a.rows (),
+    retval = DiagMatrix (mx_inline_real_dup (a.data (), a_len), a.rows (),
 			 a.cols ());
   return retval;
 }
@@ -163,7 +163,7 @@
   DiagMatrix retval;
   int a_len = a.length ();
   if (a_len > 0)
-    retval = DiagMatrix (imag_dup (a.data (), a_len), a.rows (),
+    retval = DiagMatrix (mx_inline_imag_dup (a.data (), a_len), a.rows (),
 			 a.cols ());
   return retval;
 }
--- a/liboctave/dMatrix.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/dMatrix.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -158,7 +158,7 @@
   if (rows () != a.rows () || cols () != a.cols ())
     return false;
 
-  return equal (data (), a.data (), length ());
+  return mx_inline_equal (data (), a.data (), length ());
 }
 
 bool
@@ -431,7 +431,8 @@
   int a_len = a.length ();
   Matrix retval;
   if (a_len > 0)
-    retval = Matrix (real_dup (a.data (), a_len), a.rows (), a.cols ());
+    retval = Matrix (mx_inline_real_dup (a.data (), a_len),
+		     a.rows (), a.cols ());
   return retval;
 }
 
@@ -441,7 +442,8 @@
   int a_len = a.length ();
   Matrix retval;
   if (a_len > 0)
-    retval = Matrix (imag_dup (a.data (), a_len), a.rows (), a.cols ());
+    retval = Matrix (mx_inline_imag_dup (a.data (), a_len),
+		     a.rows (), a.cols ());
   return retval;
 }
 
--- a/liboctave/dRowVector.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/dRowVector.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -59,7 +59,7 @@
   int len = length ();
   if (len != a.length ())
     return 0;
-  return equal (data (), a.data (), len);
+  return mx_inline_equal (data (), a.data (), len);
 }
 
 bool
@@ -135,7 +135,7 @@
   int a_len = a.length ();
   RowVector retval;
   if (a_len > 0)
-    retval = RowVector (real_dup (a.data (), a_len), a_len);
+    retval = RowVector (mx_inline_real_dup (a.data (), a_len), a_len);
   return retval;
 }
 
@@ -145,7 +145,7 @@
   int a_len = a.length ();
   RowVector retval;
   if (a_len > 0)
-    retval = RowVector (imag_dup (a.data (), a_len), a_len);
+    retval = RowVector (mx_inline_imag_dup (a.data (), a_len), a_len);
   return retval;
 }
 
--- a/liboctave/file-ops.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/file-ops.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -205,7 +205,7 @@
   else
     {
       buf[status] = '\0';
-      result = string (buf);
+      result = std::string (buf);
       status = 0;
     }
 #else
--- a/liboctave/mx-inlines.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/mx-inlines.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -36,10 +36,10 @@
       r[i] = v[i] OP s; \
   }
 
-VS_OP_FCN (add,      +)
-VS_OP_FCN (subtract, -)
-VS_OP_FCN (multiply, *)
-VS_OP_FCN (divide,   /)
+VS_OP_FCN (mx_inline_add,      +)
+VS_OP_FCN (mx_inline_subtract, -)
+VS_OP_FCN (mx_inline_multiply, *)
+VS_OP_FCN (mx_inline_divide,   /)
 
 #define VS_OP(F, OP, R, V, S) \
   static inline R * \
@@ -55,10 +55,10 @@
   }
 
 #define VS_OPS(R, V, S) \
-  VS_OP (add,      +, R, V, S) \
-  VS_OP (subtract, -, R, V, S) \
-  VS_OP (multiply, *, R, V, S) \
-  VS_OP (divide,   /, R, V, S)
+  VS_OP (mx_inline_add,      +, R, V, S) \
+  VS_OP (mx_inline_subtract, -, R, V, S) \
+  VS_OP (mx_inline_multiply, *, R, V, S) \
+  VS_OP (mx_inline_divide,   /, R, V, S)
 
 VS_OPS (double,  double,  double)
 VS_OPS (Complex, double,  Complex)
@@ -74,10 +74,10 @@
       r[i] = s OP v[i]; \
   } \
 
-SV_OP_FCN (add,      +)
-SV_OP_FCN (subtract, -)
-SV_OP_FCN (multiply, *)
-SV_OP_FCN (divide,   /)
+SV_OP_FCN (mx_inline_add,      +)
+SV_OP_FCN (mx_inline_subtract, -)
+SV_OP_FCN (mx_inline_multiply, *)
+SV_OP_FCN (mx_inline_divide,   /)
 
 #define SV_OP(F, OP, R, S, V) \
   static inline R * \
@@ -93,10 +93,10 @@
   }
 
 #define SV_OPS(R, S, V) \
-  SV_OP (add,      +, R, S, V) \
-  SV_OP (subtract, -, R, S, V) \
-  SV_OP (multiply, *, R, S, V) \
-  SV_OP (divide,   /, R, S, V)
+  SV_OP (mx_inline_add,      +, R, S, V) \
+  SV_OP (mx_inline_subtract, -, R, S, V) \
+  SV_OP (mx_inline_multiply, *, R, S, V) \
+  SV_OP (mx_inline_divide,   /, R, S, V)
 
 SV_OPS (double,  double,  double)
 SV_OPS (Complex, double,  Complex)
@@ -112,10 +112,10 @@
       r[i] = v1[i] OP v2[i]; \
   } \
 
-VV_OP_FCN (add,      +)
-VV_OP_FCN (subtract, -)
-VV_OP_FCN (multiply, *)
-VV_OP_FCN (divide,   /)
+VV_OP_FCN (mx_inline_add,      +)
+VV_OP_FCN (mx_inline_subtract, -)
+VV_OP_FCN (mx_inline_multiply, *)
+VV_OP_FCN (mx_inline_divide,   /)
 
 #define VV_OP(F, OP, R, T1, T2) \
   static inline R * \
@@ -131,10 +131,10 @@
   }
 
 #define VV_OPS(R, T1, T2) \
-  VV_OP (add,      +, R, T1, T2) \
-  VV_OP (subtract, -, R, T1, T2) \
-  VV_OP (multiply, *, R, T1, T2) \
-  VV_OP (divide,   /, R, T1, T2)
+  VV_OP (mx_inline_add,      +, R, T1, T2) \
+  VV_OP (mx_inline_subtract, -, R, T1, T2) \
+  VV_OP (mx_inline_multiply, *, R, T1, T2) \
+  VV_OP (mx_inline_divide,   /, R, T1, T2)
 
 VV_OPS (double,  double,  double)
 VV_OPS (Complex, double,  Complex)
@@ -151,11 +151,11 @@
   }
 
 #define VS_OP2S(V, S) \
-  VS_OP2 (add2,      +=, V, S) \
-  VS_OP2 (subtract2, -=, V, S) \
-  VS_OP2 (multiply2, *=, V, S) \
-  VS_OP2 (divide2,   /=, V, S) \
-  VS_OP2 (copy,       =, V, S)
+  VS_OP2 (mx_inline_add2,      +=, V, S) \
+  VS_OP2 (mx_inline_subtract2, -=, V, S) \
+  VS_OP2 (mx_inline_multiply2, *=, V, S) \
+  VS_OP2 (mx_inline_divide2,   /=, V, S) \
+  VS_OP2 (mx_inline_copy,       =, V, S)
 
 VS_OP2S (double,  double)
 VS_OP2S (Complex, double)
@@ -171,11 +171,11 @@
   }
 
 #define VV_OP2S(T1, T2) \
-  VV_OP2 (add2,      +=, T1, T2) \
-  VV_OP2 (subtract2, -=, T1, T2) \
-  VV_OP2 (multiply2, *=, T1, T2) \
-  VV_OP2 (divide2,   /=, T1, T2) \
-  VV_OP2 (copy,       =, T1, T2)
+  VV_OP2 (mx_inline_add2,      +=, T1, T2) \
+  VV_OP2 (mx_inline_subtract2, -=, T1, T2) \
+  VV_OP2 (mx_inline_multiply2, *=, T1, T2) \
+  VV_OP2 (mx_inline_divide2,   /=, T1, T2) \
+  VV_OP2 (mx_inline_copy,       =, T1, T2)
 
 VV_OP2S (double,  double)
 VV_OP2S (Complex, double)
@@ -183,7 +183,7 @@
 
 #define OP_EQ_FCN(T1, T2) \
   static inline bool \
-  equal (const T1 *x, const T2 *y, size_t n) \
+  mx_inline_equal (const T1 *x, const T2 *y, size_t n) \
   { \
     for (size_t i = 0; i < n; i++) \
       if (x[i] != y[i]) \
@@ -210,22 +210,22 @@
     return r; \
   }
 
-OP_DUP_FCN (, dup, double,  double)
-OP_DUP_FCN (, dup, Complex, Complex)
+OP_DUP_FCN (, mx_inline_dup, double,  double)
+OP_DUP_FCN (, mx_inline_dup, Complex, Complex)
 
 // These should really return a bool *.  Also, they should probably be
 // in with a collection of other element-by-element boolean ops.
-OP_DUP_FCN (0.0 ==, xnot, double, double)
-OP_DUP_FCN (0.0 ==, xnot, double, Complex)
+OP_DUP_FCN (0.0 ==, mx_inline_not, double, double)
+OP_DUP_FCN (0.0 ==, mx_inline_not, double, Complex)
 
-OP_DUP_FCN (, make_complex, Complex, double)
+OP_DUP_FCN (, mx_inline_make_complex, Complex, double)
 
-OP_DUP_FCN (-, change_sign, double,  double)
-OP_DUP_FCN (-, change_sign, Complex, Complex)
+OP_DUP_FCN (-, mx_inline_change_sign, double,  double)
+OP_DUP_FCN (-, mx_inline_change_sign, Complex, Complex)
 
-OP_DUP_FCN (real, real_dup, double,  Complex)
-OP_DUP_FCN (imag, imag_dup, double,  Complex)
-OP_DUP_FCN (conj, conj_dup, Complex, Complex)
+OP_DUP_FCN (real, mx_inline_real_dup, double,  Complex)
+OP_DUP_FCN (imag, mx_inline_imag_dup, double,  Complex)
+OP_DUP_FCN (conj, mx_inline_conj_dup, Complex, Complex)
 
 #endif
 
--- a/liboctave/mx-op-defs.h	Mon Jan 29 18:05:34 2001 +0000
+++ b/liboctave/mx-op-defs.h	Wed Jan 31 22:15:55 2001 +0000
@@ -165,10 +165,10 @@
   }
 
 #define MS_BIN_OPS(R, M, S) \
-  MS_BIN_OP (R, operator +, M, S, add) \
-  MS_BIN_OP (R, operator -, M, S, subtract) \
-  MS_BIN_OP (R, operator *, M, S, multiply) \
-  MS_BIN_OP (R, operator /, M, S, divide)
+  MS_BIN_OP (R, operator +, M, S, mx_inline_add) \
+  MS_BIN_OP (R, operator -, M, S, mx_inline_subtract) \
+  MS_BIN_OP (R, operator *, M, S, mx_inline_multiply) \
+  MS_BIN_OP (R, operator /, M, S, mx_inline_divide)
 
 #define MS_CMP_OP_DECLS(M, S) \
   CMP_OP_DECL (mx_el_lt, M, S); \
@@ -267,10 +267,10 @@
   }
 
 #define SM_BIN_OPS(R, S, M) \
-  SM_BIN_OP (R, operator +, S, M, add) \
-  SM_BIN_OP (R, operator -, S, M, subtract) \
-  SM_BIN_OP (R, operator *, S, M, multiply) \
-  SM_BIN_OP (R, operator /, S, M, divide)
+  SM_BIN_OP (R, operator +, S, M, mx_inline_add) \
+  SM_BIN_OP (R, operator -, S, M, mx_inline_subtract) \
+  SM_BIN_OP (R, operator *, S, M, mx_inline_multiply) \
+  SM_BIN_OP (R, operator /, S, M, mx_inline_divide)
 
 #define SM_CMP_OP_DECLS(S, M) \
   CMP_OP_DECL (mx_el_lt, S, M); \
@@ -379,10 +379,10 @@
   }
 
 #define MM_BIN_OPS(R, M1, M2) \
-  MM_BIN_OP (R, operator +, M1, M2, add) \
-  MM_BIN_OP (R, operator -, M1, M2, subtract) \
-  MM_BIN_OP (R, product,    M1, M2, multiply) \
-  MM_BIN_OP (R, quotient,   M1, M2, divide)
+  MM_BIN_OP (R, operator +, M1, M2, mx_inline_add) \
+  MM_BIN_OP (R, operator -, M1, M2, mx_inline_subtract) \
+  MM_BIN_OP (R, product,    M1, M2, mx_inline_multiply) \
+  MM_BIN_OP (R, quotient,   M1, M2, mx_inline_divide)
 
 #define MM_CMP_OP_DECLS(M1, M2) \
   CMP_OP_DECL (mx_el_lt, M1, M2); \
@@ -748,9 +748,9 @@
   }
 
 #define DMDM_BIN_OPS(R, DM1, DM2) \
-  DMDM_BIN_OP (R, operator +, DM1, DM2, add) \
-  DMDM_BIN_OP (R, operator -, DM1, DM2, subtract) \
-  DMDM_BIN_OP (R, product,    DM1, DM2, multiply)
+  DMDM_BIN_OP (R, operator +, DM1, DM2, mx_inline_add) \
+  DMDM_BIN_OP (R, operator -, DM1, DM2, mx_inline_subtract) \
+  DMDM_BIN_OP (R, product,    DM1, DM2, mx_inline_multiply)
 
 #define DMDM_OP_DECLS(R, DM1, DM2) \
   DMDM_BIN_OP_DECLS (R, DM1, DM2)
--- a/src/help.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/src/help.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -639,7 +639,7 @@
 		 << "See also: \\args\\.\n"
                  << "@end macro\n";
 
-	  filter << msg.substr (pos+1) << endl;
+	  filter << msg.substr (pos+1) << std::endl;
 
 	  int status = filter.close ();
 
--- a/src/load-save.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/src/load-save.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -2772,7 +2772,7 @@
 // Return TRUE if NAME matches one of the given globbing PATTERNS.
 
 static bool
-matches_patterns (const std::string_vector& patterns, int pat_idx,
+matches_patterns (const string_vector& patterns, int pat_idx,
 		  int num_pat, const std::string& name)
 {
   for (int i = pat_idx; i < num_pat; i++)
@@ -4081,7 +4081,7 @@
   FOUR_BYTE_INT junk=0;
   FOUR_BYTE_INT nr;
   FOUR_BYTE_INT nc;
-  streampos fixup, contin;
+  std::streampos fixup, contin;
 
   // element type and length
   fixup = os.tellp ();
@@ -4231,7 +4231,7 @@
 	for (i = m.first (); i; m.next (i))
 	  {
 	    // write the name of each element
-	    string tstr = m.key (i);
+	    std::string tstr = m.key (i);
 	    memset (buf, 0, 32);
 	    strncpy (buf, tstr.c_str (), 31); // only 31 char names permitted
 	    os.write (buf, 32);
@@ -4609,7 +4609,7 @@
 {
   bool infnan_warned = true;
 
-  save_ascii_data (os, t, name, infnan_warned, true, false, 0);
+  return save_ascii_data (os, t, name, infnan_warned, true, false, 0);
 }
 
 // Save the info from sr on stream os in the format specified by fmt.
@@ -4810,7 +4810,7 @@
 }
 
 static void
-save_vars (const std::string_vector& argv, int argv_idx, int argc,
+save_vars (const string_vector& argv, int argv_idx, int argc,
 	   std::ostream& os, bool save_builtins, load_save_format fmt,
 	   bool save_as_floats, bool write_header_info)
 {
@@ -5123,7 +5123,8 @@
 	  if (file)
 	    {
 	      bool write_header_info
-		= ( (file.rdbuf ())->seekoff (0, std::ios::cur) == 0);
+		= ((file.rdbuf ())->seekoff (0, std::ios::cur)
+		   == static_cast<std::streampos> (0));
 	      
 	      save_vars (argv, i, argc, file, save_builtins, format,
 			 save_as_floats, write_header_info);
@@ -5226,7 +5227,7 @@
   return status;
 }
 
-static string
+static std::string
 default_save_header_format (void)
 {
   return
--- a/src/pr-output.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/src/pr-output.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -1828,7 +1828,7 @@
 
       if (! error_state)
 	{
-	  ostream *osp = os.output_stream ();
+	  std::ostream *osp = os.output_stream ();
 
 	  if (osp)
 	    args(1).print (*osp);
--- a/src/pt-pr-code.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/src/pt-pr-code.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -1274,7 +1274,7 @@
 
   bool prev_char_was_newline = false;
 
-  string comment = elt.text ();
+  std::string comment = elt.text ();
 
   size_t len = comment.length ();
 
--- a/src/utils.cc	Mon Jan 29 18:05:34 2001 +0000
+++ b/src/utils.cc	Wed Jan 31 22:15:55 2001 +0000
@@ -720,11 +720,11 @@
 
 #if defined (__GNUG__)
 
-  ostrstream buf;
+  std::ostrstream buf;
 
   buf.vform (fmt, args);
 
-  buf << ends;
+  buf << std::ends;
 
   char *s = buf.str ();