[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Pkg-octave-devel] Bug#656467: Bug#656467: octave-fixed: mark_as_command is obsolete



2012/1/19 Jordi Gutiérrez Hermoso <jordigh@octave.org>:
> 2012/1/19 Svante Signell <svante.signell@telia.com>:

>> Maybe I can help trying to compile it. What do I need to install to get
>> the environment for a build? I'll go for octave 3.4.3 to start with
>> already available for Debian.
[snip]
> I attach you the diff of changes I have so far (sorry it has a bunch
> of whitespace changes too), if you want to start from this.

Here, another diff without whitespace changes for easier reading.

- Jordi G. H.
Index: doc/Makefile
===================================================================
--- doc/Makefile	(revision 9213)
+++ doc/Makefile	(working copy)
@@ -5,7 +5,7 @@
 MKDOC = ../../../admin/mkdoc
 MKTEXI = ../../../admin/mktexi
 MAKEINFO = makeinfo --no-split
-TEXI2PDF = texi2ppf --clean
+TEXI2PDF = texi2pdf --clean
 DVIPS = dvips
 LN_S = ln -s
 endif
Index: src/int/fixed.cc
===================================================================
--- src/int/fixed.cc	(revision 9213)
+++ src/int/fixed.cc	(working copy)
@@ -1178,7 +1178,7 @@
   */
 
   fp_uint i = num >> x.decsize;
-  fp_uint d = (num & ((x.filter >> x.intsize+1) & x.filter));
+  fp_uint d = (num & ((x.filter >> (x.intsize+1)) & x.filter));
 
   /*
     Print sign.
Index: src/fixedRowVector.cc
===================================================================
--- src/fixedRowVector.cc	(revision 9213)
+++ src/fixedRowVector.cc	(working copy)
@@ -40,7 +40,7 @@
 // Fixed Point Row Vector class
 
 FixedRowVector::FixedRowVector (const MArray<int> &is, const MArray<int> &ds)
-  : MArray<FixedPoint> (is.length())
+  : MArray<FixedPoint> (dim_vector (1, is.length()))
 {
   if (length() != ds.length()) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -52,7 +52,7 @@
 }
 
 FixedRowVector::FixedRowVector (const RowVector &is, const RowVector &ds)
-  : MArray<FixedPoint> (is.length())
+  : MArray<FixedPoint> (dim_vector (1, is.length()))
 {
   if (length() != ds.length()) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -65,7 +65,7 @@
 
 FixedRowVector::FixedRowVector (const MArray<int> &is, const MArray<int> &ds, 
 				const FixedRowVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -79,7 +79,7 @@
 
 FixedRowVector::FixedRowVector (const RowVector &is, const RowVector &ds, 
 				const FixedRowVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -93,7 +93,7 @@
 
 FixedRowVector::FixedRowVector (unsigned int is, unsigned int ds, 
 				const FixedRowVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   for (int i = 0; i < length (); i++)
     elem (i) = FixedPoint(is, ds, a.elem (i));
@@ -101,7 +101,7 @@
 
 FixedRowVector::FixedRowVector (const MArray<int> &is, const MArray<int> &ds, 
 				const RowVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -115,7 +115,7 @@
 
 FixedRowVector::FixedRowVector (const RowVector &is, const RowVector &ds, 
 				const RowVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -129,7 +129,7 @@
 
 FixedRowVector::FixedRowVector (unsigned int is, unsigned int ds, 
 				const RowVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   for (int i = 0; i < length (); i++)
       elem (i) = FixedPoint(is, ds, a.elem (i));
@@ -137,7 +137,7 @@
 
 FixedRowVector::FixedRowVector (const MArray<int> &is, const MArray<int> &ds, 
 				const RowVector& a, const RowVector& b)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if ((length() != b.length())  || (length() != is.length()) ||
       (length() != ds.length())) {
@@ -153,7 +153,7 @@
 
 FixedRowVector::FixedRowVector (const RowVector &is, const RowVector &ds, 
 				const RowVector& a, const RowVector& b)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if ((length() != b.length())  || (length() != is.length()) ||
       (length() != ds.length())) {
@@ -169,7 +169,7 @@
 
 FixedRowVector::FixedRowVector (unsigned int is, unsigned int ds, 
 				const RowVector& a, const RowVector& b)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (1, a.length()))
 {
   if (length() != b.length()) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -462,21 +462,21 @@
 
   if (a_len == 1)
     {
-      retval.resize(b_len);
+    retval.resize(dim_vector (1, b_len));
       FixedPoint ad = a(0);
       for (int i = 0; i < b_len; i++)
 	retval(i) = pow(ad, b(i));
     }
   else if (b_len == 1)
     {
-      retval.resize(a_len);
+    retval.resize(dim_vector (1, a_len));
       FixedPoint bd = b(0);
       for (int i = 0; i < a_len; i++)
 	  retval(i) = pow(a(i), bd);
     }
   else if (a_len == b_len)
     {
-      retval.resize(a_len);
+    retval.resize(dim_vector (1, a_len));
       for (int i = 0; i < a_len; i++)
 	  retval(i) = pow(a(i), b(i));
     }
@@ -515,7 +515,7 @@
       int a_nr = a.rows ();
       int a_nc = a.cols ();
 
-      retval.resize (a_nc, FixedPoint());
+    retval.resize (dim_vector (1, a_nc), FixedPoint());
       if (len != 0)
 	for (int i = 0; i <  a_nc; i++) 
 	  for (int j = 0; j <  a_nr; j++)
Index: src/fixedNDArray.h
===================================================================
--- src/fixedNDArray.h	(revision 9213)
+++ src/fixedNDArray.h	(working copy)
@@ -26,7 +26,7 @@
 #if !defined (octave_FixedNDArray_h)
 #define octave_FixedNDArray_h 1
 
-#include <octave/MArrayN.h>
+#include <octave/MArray.h>
 #include <octave/dMatrix.h>
 #include <octave/dNDArray.h>
 #include <octave/boolNDArray.h>
Index: src/fixedColVector.h
===================================================================
--- src/fixedColVector.h	(revision 9213)
+++ src/fixedColVector.h	(working copy)
@@ -50,7 +50,8 @@
 
   FixedColumnVector (void) : MArray<FixedPoint> () { }
 
-  explicit FixedColumnVector (int n) : MArray<FixedPoint> (n) { }
+  explicit FixedColumnVector (int n)
+    : MArray<FixedPoint> (dim_vector (n, 1)) { }
 
   FixedColumnVector (const MArray<int> &is, const MArray<int> &ds);
 
@@ -82,7 +83,8 @@
   FixedColumnVector (const ColumnVector &is, const ColumnVector &ds, 
 		  const ColumnVector& a, const ColumnVector& b);
 
-  FixedColumnVector (int n, FixedPoint val) : MArray<FixedPoint> (n, val) { }
+  FixedColumnVector (int n, FixedPoint val)
+    : MArray<FixedPoint> (dim_vector (n,1), val) { }
 
   FixedColumnVector (const FixedColumnVector& a) : MArray<FixedPoint> (a) { }
 
@@ -140,7 +142,8 @@
   FixedPoint min (void) const;
   FixedPoint max (void) const;
 
-  friend FixedColumnVector operator * (const FixedMatrix& a, const FixedColumnVector& b);
+  friend FixedColumnVector operator * (const FixedMatrix& a,
+                                       const FixedColumnVector& b);
 
   friend FixedColumnVector real (const FixedColumnVector &x);
   friend FixedColumnVector imag (const FixedColumnVector &x);
@@ -174,15 +177,15 @@
 
   // i/o
 
-  friend std::ostream& operator << (std::ostream& os, const FixedColumnVector& a);
-  friend std::istream& operator >> (std::istream& is, FixedColumnVector& a);
-
-private:
+  friend std::ostream& operator << (std::ostream& os,
+                                    const FixedColumnVector& a);
+  friend std::istream& operator >> (std::istream& is,
+                                    FixedColumnVector& a);
 
-  FixedColumnVector (FixedPoint *d, int l) : MArray<FixedPoint> (d, l) { }
 };
 
-FixedColumnVector operator * (const FixedMatrix& a, const FixedColumnVector& b);
+FixedColumnVector operator * (const FixedMatrix& a,
+                              const FixedColumnVector& b);
 
 FixedColumnVector real (const FixedColumnVector &x);
 FixedColumnVector imag (const FixedColumnVector &x);
Index: src/fixedMatrix.h
===================================================================
--- src/fixedMatrix.h	(revision 9213)
+++ src/fixedMatrix.h	(working copy)
@@ -26,7 +26,7 @@
 #if !defined (octave_FixedMatrix_h)
 #define octave_FixedMatrix_h 1
 
-#include <octave/MArray2.h>
+#include <octave/MArray.h>
 
 #include <octave/mx-defs.h>
 #include <octave/mx-op-defs.h>
@@ -50,32 +50,34 @@
 
 class
 OCTAVE_FIXED_API
-FixedMatrix : public MArray2<FixedPoint>
+FixedMatrix : public MArray<FixedPoint>
 {
 public:
 
-  FixedMatrix (void) : MArray2<FixedPoint> () { }
+  FixedMatrix (void) : MArray<FixedPoint> () { }
 
-  FixedMatrix (const dim_vector& dv) : MArray2<FixedPoint> (dv) { }
+  FixedMatrix (const dim_vector& dv) : MArray<FixedPoint> (dv) { }
 
-  FixedMatrix (int r, int c) : MArray2<FixedPoint> (r, c) { }
+  FixedMatrix (int r, int c)
+    : MArray<FixedPoint> (dim_vector(r, c)) { }
 
-  FixedMatrix (int r, int c, const FixedPoint val) : MArray2<FixedPoint> (r, c, val) { }
+  FixedMatrix (int r, int c, const FixedPoint val)
+    : MArray<FixedPoint> (dim_vector(r, c), val) { }
 
-  FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds);
+  FixedMatrix (const MArray<int> &is, const MArray<int> &ds);
 
   FixedMatrix (const Matrix &is, const Matrix &ds);
 
   FixedMatrix (unsigned int is, unsigned int ds, const FixedMatrix& a);
 
-  FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+  FixedMatrix (const MArray<int> &is, const MArray<int> &ds, 
 	       const FixedMatrix& a);
 
   FixedMatrix (const Matrix &is, const Matrix &ds, const FixedMatrix& a);
 
   FixedMatrix (unsigned int is, unsigned int ds, const Matrix& a);
 
-  FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+  FixedMatrix (const MArray<int> &is, const MArray<int> &ds, 
 	       const Matrix& a);
 
   FixedMatrix (const Matrix &is, const Matrix &ds, const Matrix& a);
@@ -83,19 +85,19 @@
   FixedMatrix (unsigned int is, unsigned int ds, const Matrix& a, 
 	       const Matrix& b);
 
-  FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+  FixedMatrix (const MArray<int> &is, const MArray<int> &ds, 
 	       const Matrix& a, const Matrix& b);
 
   FixedMatrix (const Matrix &is, const Matrix &ds, const Matrix& a, 
 	       const Matrix& b);
 
-  FixedMatrix (const MArray2<int> &a);
+  FixedMatrix (const MArray<int> &a);
 
   FixedMatrix (const Matrix &a);
 
-  FixedMatrix (const FixedMatrix& a) : MArray2<FixedPoint> (a) { }
-  FixedMatrix (const MArray2<FixedPoint>& a) : MArray2<FixedPoint> (a) { }
-  FixedMatrix (const Array2<FixedPoint> &a) : MArray2<FixedPoint> (a) { }
+  FixedMatrix (const FixedMatrix& a) : MArray<FixedPoint> (a) { }
+  FixedMatrix (const MArray<FixedPoint>& a) : MArray<FixedPoint> (a) { }
+  FixedMatrix (const Array<FixedPoint> &a) : MArray<FixedPoint> (a) { }
 
   explicit FixedMatrix (const FixedRowVector& rv);
 
@@ -120,7 +122,7 @@
 
   FixedMatrix& operator = (const FixedMatrix& a)
     {
-      MArray2<FixedPoint>::operator = (a);
+      MArray<FixedPoint>::operator = (a);
       return *this;
     }
 
@@ -151,7 +153,7 @@
   FixedMatrix stack (const FixedColumnVector& a) const;
 
   FixedMatrix transpose (void) const 
-       { return MArray2<FixedPoint>::transpose (); }
+       { return MArray<FixedPoint>::transpose (); }
 
   // resize is the destructive equivalent for this one
 
@@ -246,9 +248,6 @@
 
   static FixedPoint resize_fill_value (void) { return FixedPoint(); }
 
-private:
-
-  FixedMatrix (FixedPoint *d, int r, int c) : MArray2<FixedPoint> (d, r, c) { }
 };
 
 OCTAVE_FIXED_API FixedMatrix operator * (const FixedColumnVector& a, const FixedRowVector& b);
@@ -314,7 +313,7 @@
 MM_CMP_OP_DECLS (FixedMatrix, FixedMatrix, )
 MM_BOOL_OP_DECLS (FixedMatrix, FixedMatrix, )
 
-MARRAY_FORWARD_DEFS (MArray2, FixedMatrix, FixedPoint)
+MARRAY_FORWARD_DEFS (MArray, FixedMatrix, FixedPoint)
 
 #endif
 
Index: src/fixedCMatrix.h
===================================================================
--- src/fixedCMatrix.h	(revision 9213)
+++ src/fixedCMatrix.h	(working copy)
@@ -26,7 +26,7 @@
 #if !defined (octave_FixedCMatrix_h)
 #define octave_FixedCMatrix_h 1
 
-#include <octave/MArray2.h>
+#include <octave/MArray.h>
 
 #include <octave/mx-defs.h>
 #include <octave/mx-op-defs.h>
@@ -51,20 +51,21 @@
 
 class
 OCTAVE_FIXED_API
-FixedComplexMatrix : public MArray2<FixedPointComplex>
+FixedComplexMatrix : public MArray<FixedPointComplex>
 {
 public:
 
-  FixedComplexMatrix (void) : MArray2<FixedPointComplex> () { }
+  FixedComplexMatrix (void) : MArray<FixedPointComplex> () { }
 
-  FixedComplexMatrix (const dim_vector& dv) : MArray2<FixedPointComplex> (dv) { }
+  FixedComplexMatrix (const dim_vector& dv) : MArray<FixedPointComplex> (dv) { }
 
-  FixedComplexMatrix (int r, int c) : MArray2<FixedPointComplex> (r, c) { }
+  FixedComplexMatrix (int r, int c)
+    : MArray<FixedPointComplex> (dim_vector (r, c)) { }
 
-  FixedComplexMatrix (int r, int c, const FixedPointComplex val) :
-    MArray2<FixedPointComplex> (r, c, val) { }
+  FixedComplexMatrix (int r, int c, const FixedPointComplex val) 
+    : MArray<FixedPointComplex> (dim_vector (r, c), val) { }
 
-  FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds);
+  FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds);
 
   FixedComplexMatrix (const Matrix &is, const Matrix &ds);
 
@@ -75,7 +76,7 @@
 
   FixedComplexMatrix (Complex is, Complex ds, const FixedComplexMatrix& a);
 
-  FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+  FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds, 
 		      const FixedComplexMatrix& a);
 
   FixedComplexMatrix (const Matrix &is, const Matrix &ds, 
@@ -88,7 +89,7 @@
 
   FixedComplexMatrix (Complex is, Complex ds, const FixedMatrix& a);
 
-  FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+  FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds, 
 		      const FixedMatrix& a);
 
   FixedComplexMatrix (const Matrix &is, const Matrix &ds, 
@@ -102,7 +103,7 @@
 
   FixedComplexMatrix (Complex is, Complex ds, const ComplexMatrix& a);
 
-  FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> & ds, 
+  FixedComplexMatrix (const MArray<int> &is, const MArray<int> & ds, 
 		      const ComplexMatrix& a);
 
   FixedComplexMatrix (const Matrix &is, const Matrix & ds, 
@@ -115,7 +116,7 @@
 
   FixedComplexMatrix (Complex is, Complex ds, const Matrix& a);
 
-  FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> & ds, 
+  FixedComplexMatrix (const MArray<int> &is, const MArray<int> & ds, 
 		      const Matrix& a);
 
   FixedComplexMatrix (const Matrix &is, const Matrix & ds, const Matrix& a);
@@ -129,7 +130,7 @@
   FixedComplexMatrix (Complex is, Complex ds, const ComplexMatrix &a, 
 		      const ComplexMatrix &b);
 
-  FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds,
+  FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds,
 		      const ComplexMatrix &a, const ComplexMatrix &b);
 
   FixedComplexMatrix (const Matrix &is, const Matrix &ds,
@@ -143,10 +144,10 @@
   FixedComplexMatrix (const FixedMatrix& a, const FixedMatrix& b);
 
   FixedComplexMatrix (const FixedComplexMatrix& a) : 
-    MArray2<FixedPointComplex> (a) { }
+    MArray<FixedPointComplex> (a) { }
 
-  FixedComplexMatrix (const MArray2<FixedPointComplex>& a) : 
-    MArray2<FixedPointComplex> (a) { }
+  FixedComplexMatrix (const MArray<FixedPointComplex>& a) : 
+    MArray<FixedPointComplex> (a) { }
 
   explicit FixedComplexMatrix (const FixedComplexRowVector& rv);
 
@@ -174,7 +175,7 @@
 
   FixedComplexMatrix& operator = (const FixedComplexMatrix& a)
     {
-      MArray2<FixedPointComplex>::operator = (a);
+      MArray<FixedPointComplex>::operator = (a);
       return *this;
     }
 
@@ -208,7 +209,7 @@
   FixedComplexMatrix stack (const FixedComplexColumnVector& a) const;
 
   FixedComplexMatrix hermitian (void) const;
-  FixedComplexMatrix transpose (void) const { return MArray2<FixedPointComplex>::transpose (); }
+  FixedComplexMatrix transpose (void) const { return MArray<FixedPointComplex>::transpose (); }
 
   // resize is the destructive equivalent for this one
 
@@ -312,11 +313,6 @@
 
   static FixedPointComplex resize_fill_value (void) 
       { return FixedPointComplex(); }
-
-private:
-
-  FixedComplexMatrix (FixedPointComplex *d, int r, int c) : 
-    MArray2<FixedPointComplex> (d, r, c) { }
 };
 
 OCTAVE_FIXED_API FixedComplexMatrix operator * (const FixedComplexColumnVector& a, 
@@ -403,7 +399,7 @@
 MM_CMP_OP_DECLS (FixedComplexMatrix, FixedComplexMatrix, )
 MM_BOOL_OP_DECLS (FixedComplexMatrix, FixedComplexMatrix, )
 
-MARRAY_FORWARD_DEFS (MArray2, FixedComplexMatrix, FixedPointComplex)
+MARRAY_FORWARD_DEFS (MArray, FixedComplexMatrix, FixedPointComplex)
 
 #endif
 
Index: src/Array-f.cc
===================================================================
--- src/Array-f.cc	(revision 9213)
+++ src/Array-f.cc	(working copy)
@@ -58,30 +58,18 @@
 INSTANTIATE_MARRAY_FRIENDS (FixedPoint, )
 INSTANTIATE_MARRAY_FRIENDS (FixedPointComplex, )
 
-#include <octave/Array2.h>
-#include <octave/MArray2.h>
-#include <octave/MArray2.cc>
-
-template class Array2<FixedPoint>;
-template class MArray2<FixedPoint>;
-template class Array2<FixedPointComplex>;
-template class MArray2<FixedPointComplex>;
-
-INSTANTIATE_MARRAY2_FRIENDS (FixedPoint, OCTAVE_FIXED_API)
-INSTANTIATE_MARRAY2_FRIENDS (FixedPointComplex, OCTAVE_FIXED_API)
-
-#include <octave/ArrayN.h>
-#include <octave/ArrayN.cc>
-#include <octave/MArrayN.h>
-#include <octave/MArrayN.cc>
+#include <octave/Array.h>
+#include <octave/Array.cc>
+#include <octave/MArray.h>
+#include <octave/MArray.cc>
 
 template class ArrayN<FixedPoint>;
 template class MArrayN<FixedPoint>;
 template class ArrayN<FixedPointComplex>;
 template class MArrayN<FixedPointComplex>;
 
-INSTANTIATE_MARRAYN_FRIENDS (FixedPoint, )
-INSTANTIATE_MARRAYN_FRIENDS (FixedPointComplex, )
+INSTANTIATE_MARRAY_FRIENDS (FixedPoint, )
+INSTANTIATE_MARRAY_FRIENDS (FixedPointComplex, )
 
 /*
 ;;; Local Variables: ***
Index: src/fixed-inline.cc
===================================================================
Index: src/fixedRowVector.h
===================================================================
--- src/fixedRowVector.h	(revision 9213)
+++ src/fixedRowVector.h	(working copy)
@@ -50,7 +50,7 @@
 
   FixedRowVector (void) : MArray<FixedPoint> () { }
 
-  explicit FixedRowVector (int n) : MArray<FixedPoint> (n) { }
+  explicit FixedRowVector (int n) : MArray<FixedPoint> (dim_vector (1,n)) { }
 
   FixedRowVector (const MArray<int> &is, const MArray<int> &ds);
 
@@ -81,7 +81,8 @@
   FixedRowVector (const RowVector &is, const RowVector &ds, 
 		  const RowVector& a, const RowVector& b);
 
-  FixedRowVector (int n, FixedPoint val) : MArray<FixedPoint> (n, val) { }
+  FixedRowVector (int n, FixedPoint val)
+    : MArray<FixedPoint> (dim_vector(1, n), val) { }
 
   FixedRowVector (const FixedRowVector& a) : MArray<FixedPoint> (a) { }
 
@@ -176,9 +177,6 @@
   friend std::ostream& operator << (std::ostream& os, const FixedRowVector& a);
   friend std::istream& operator >> (std::istream& is, FixedRowVector& a);
 
-private:
-
-  FixedRowVector (FixedPoint *d, int l) : MArray<FixedPoint> (d, l) { }
 };
 
 FixedPoint operator * (const FixedRowVector& a, const FixedColumnVector& b);
Index: src/fixedColVector.cc
===================================================================
--- src/fixedColVector.cc	(revision 9213)
+++ src/fixedColVector.cc	(working copy)
@@ -41,7 +41,7 @@
 
 FixedColumnVector::FixedColumnVector (const MArray<int> &is, 
 				      const MArray<int> &ds)
-  : MArray<FixedPoint> (is.length())
+  : MArray<FixedPoint> (dim_vector (is.length(), 1))
 {
   if (length() != ds.length()) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -54,7 +54,7 @@
 
 FixedColumnVector::FixedColumnVector (const ColumnVector &is, 
 				      const ColumnVector &ds)
-  : MArray<FixedPoint> (is.length())
+  : MArray<FixedPoint> (dim_vector (is.length(), 1))
 {
   if (length() != ds.length()) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -66,8 +66,9 @@
 }
 
 FixedColumnVector::FixedColumnVector (const MArray<int> &is, 
-		const MArray<int> &ds, const FixedColumnVector& a)
-  : MArray<FixedPoint> (a.length())
+                                      const MArray<int> &ds,
+                                      const FixedColumnVector& a)
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -80,8 +81,9 @@
 }
 
 FixedColumnVector::FixedColumnVector (const ColumnVector &is, 
-		const ColumnVector &ds, const FixedColumnVector& a)
-  : MArray<FixedPoint> (a.length())
+                                      const ColumnVector &ds,
+                                      const FixedColumnVector& a)
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -95,15 +97,16 @@
 
 FixedColumnVector::FixedColumnVector (unsigned int is, unsigned int ds, 
 				const FixedColumnVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   for (int i = 0; i < length (); i++)
     elem (i) = FixedPoint(is, ds, a.elem (i));
 }
 
 FixedColumnVector::FixedColumnVector (const MArray<int> &is, 
-		const MArray<int> &ds, const ColumnVector& a)
-  : MArray<FixedPoint> (a.length())
+                                      const MArray<int> &ds,
+                                      const ColumnVector& a)
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -116,8 +119,9 @@
 }
 
 FixedColumnVector::FixedColumnVector (const ColumnVector &is, 
-		const ColumnVector &ds, const ColumnVector& a)
-  : MArray<FixedPoint> (a.length())
+                                      const ColumnVector &ds,
+                                      const ColumnVector& a)
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if ((length() != is.length()) || (length() != ds.length())) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -131,16 +135,17 @@
 
 FixedColumnVector::FixedColumnVector (unsigned int is, unsigned int ds, 
 				const ColumnVector& a)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   for (int i = 0; i < length (); i++)
       elem (i) = FixedPoint(is, ds, a.elem (i));
 }
 
 FixedColumnVector::FixedColumnVector (const MArray<int> &is, 
-			const MArray<int> &ds, const ColumnVector& a, 
+                                      const MArray<int> &ds,
+                                      const ColumnVector& a,
 			const ColumnVector& b)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if ((length() != b.length())  || (length() != is.length()) ||
       (length() != ds.length())) {
@@ -155,9 +160,10 @@
 }
 
 FixedColumnVector::FixedColumnVector (const ColumnVector &is, 
-		const ColumnVector &ds, const ColumnVector& a, 
+                                      const ColumnVector &ds,
+                                      const ColumnVector& a,
 		const ColumnVector& b)
-  : MArray<FixedPoint> (a.length())
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if ((length() != b.length())  || (length() != is.length()) ||
       (length() != ds.length())) {
@@ -171,9 +177,11 @@
 			  (unsigned int)b.elem (i));
 }
 
-FixedColumnVector::FixedColumnVector (unsigned int is, unsigned int ds, 
-				const ColumnVector& a, const ColumnVector& b)
-  : MArray<FixedPoint> (a.length())
+FixedColumnVector::FixedColumnVector (unsigned int is,
+                                      unsigned int ds,
+                                      const ColumnVector& a,
+                                      const ColumnVector& b)
+  : MArray<FixedPoint> (dim_vector (a.length(), 1))
 {
   if (length() != b.length()) {
     (*current_liboctave_error_handler) ("vector size mismatch");
@@ -446,7 +454,7 @@
     gripe_nonconformant ("operator *", nr, nc, a_len, 1);
   else
     {
-      retval.resize (nr, FixedPoint());
+    retval.resize (dim_vector (nr,1), FixedPoint());
       if (nr != 0 && nc != 0)
 	for (int i = 0; i <  nc; i++) 
 	  for (int j = 0; j <  nr; j++)
@@ -551,21 +559,21 @@
 
   if (a_len == 1)
     {
-      retval.resize(b_len);
+    retval.resize(dim_vector (b_len, 1));
       FixedPoint ad = a(0);
       for (int i = 0; i < b_len; i++)
 	retval(i) = pow(ad, b(i));
     }
   else if (b_len == 1)
     {
-      retval.resize(a_len);
+    retval.resize(dim_vector (a_len, 1));
       FixedPoint bd = b(0);
       for (int i = 0; i < a_len; i++)
 	  retval(i) = pow(a(i), bd);
     }
   else if (a_len == b_len)
     {
-      retval.resize(a_len);
+    retval.resize(dim_vector (a_len, 1));
       for (int i = 0; i < a_len; i++)
 	  retval(i) = pow(a(i), b(i));
     }
Index: src/fixedCNDArray.cc
===================================================================
Index: src/fixedMatrix.cc
===================================================================
--- src/fixedMatrix.cc	(revision 9213)
+++ src/fixedMatrix.cc	(working copy)
@@ -44,8 +44,8 @@
 
 // Fixed Point Matrix class.
 
-FixedMatrix::FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds)
-  : MArray2<FixedPoint> (is.rows(), is.cols())
+FixedMatrix::FixedMatrix (const MArray<int> &is, const MArray<int> &ds)
+  : MArray<FixedPoint> (dim_vector (is.rows(), is.cols()))
 {
   if ((rows() != ds.rows()) || (cols() != ds.cols())) {
     (*current_liboctave_error_handler) ("matrix size mismatch");
@@ -59,7 +59,7 @@
 
 
 FixedMatrix::FixedMatrix (const Matrix &is, const Matrix &ds)
-  : MArray2<FixedPoint> (is.rows(), is.cols())
+  : MArray<FixedPoint> (dim_vector (is.rows(), is.cols()))
 {
   if ((rows() != ds.rows()) || (cols() != ds.cols())) {
     (*current_liboctave_error_handler) ("matrix size mismatch");
@@ -71,9 +71,9 @@
       elem (i, j) = FixedPoint((unsigned int)is(i,j), (unsigned int)ds(i,j));
 }
 
-FixedMatrix::FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+FixedMatrix::FixedMatrix (const MArray<int> &is, const MArray<int> &ds,
 			  const FixedMatrix& a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != is.rows()) || (cols() != is.cols()) || (rows() != ds.rows())
       || (cols() != ds.cols())) {
@@ -89,7 +89,7 @@
 
 FixedMatrix::FixedMatrix (const Matrix &is, const Matrix &ds, 
 			  const FixedMatrix& a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != is.rows()) || (cols() != is.cols()) || (rows() != ds.rows())
       || (cols() != ds.cols())) {
@@ -105,16 +105,16 @@
 
 FixedMatrix::FixedMatrix (unsigned int is, unsigned int ds, 
 			  const FixedMatrix& a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   for (int j = 0; j < cols (); j++)
     for (int i = 0; i < rows (); i++)
       elem (i, j) = FixedPoint(is, ds, a.elem (i, j));
 }
 
-FixedMatrix::FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+FixedMatrix::FixedMatrix (const MArray<int> &is, const MArray<int> &ds,
 			  const Matrix& a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != is.rows()) || (cols() != is.cols()) || (rows() != ds.rows())
       || (cols() != ds.cols())) {
@@ -130,7 +130,7 @@
 
 FixedMatrix::FixedMatrix (const Matrix &is, const Matrix &ds, 
 			  const Matrix& a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != is.rows()) || (cols() != is.cols()) || (rows() != ds.rows())
       || (cols() != ds.cols())) {
@@ -145,7 +145,7 @@
 }
 
 FixedMatrix::FixedMatrix (unsigned int is, unsigned int ds, const Matrix& a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   for (int j = 0; j < cols (); j++)
     for (int i = 0; i < rows (); i++)
@@ -154,7 +154,7 @@
 
 FixedMatrix::FixedMatrix (unsigned int is, unsigned int ds, const Matrix& a, 
 			  const Matrix& b)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != b.rows()) || (cols() != b.cols())) {
     (*current_liboctave_error_handler) ("matrix size mismatch");
@@ -167,9 +167,9 @@
 			       (unsigned int)b.elem (i,j));
 }
 
-FixedMatrix::FixedMatrix (const MArray2<int> &is, const MArray2<int> &ds, 
+FixedMatrix::FixedMatrix (const MArray<int> &is, const MArray<int> &ds,
 			  const Matrix& a, const Matrix& b)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != b.rows()) || (cols() != b.cols()) || (rows() != is.rows())
       || (cols() != is.cols()) || (rows() != ds.rows()) 
@@ -187,7 +187,7 @@
 
 FixedMatrix::FixedMatrix (const Matrix &is, const Matrix &ds, const Matrix& a,
 			  const Matrix& b)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
   if ((rows() != b.rows()) || (cols() != b.cols()) || (rows() != is.rows())
       || (cols() != is.cols()) || (rows() != ds.rows()) 
@@ -203,8 +203,8 @@
 			       (unsigned int)b.elem (i,j));
 }
 
-FixedMatrix::FixedMatrix (const MArray2<int> &a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+FixedMatrix::FixedMatrix (const MArray<int> &a)
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
 
   for (int j = 0; j < cols (); j++)
@@ -213,7 +213,7 @@
 }
 
 FixedMatrix::FixedMatrix (const Matrix &a)
-  : MArray2<FixedPoint> (a.rows(), a.cols())
+  : MArray<FixedPoint> (dim_vector (a.rows(), a.cols()))
 {
 
   for (int j = 0; j < cols (); j++)
@@ -222,14 +222,14 @@
 }
 
 FixedMatrix::FixedMatrix (const FixedRowVector& rv)
-  : MArray2<FixedPoint> (1, rv.length (), FixedPoint())
+  : MArray<FixedPoint> (dim_vector (1, rv.length ()), FixedPoint())
 {
   for (int i = 0; i < rv.length (); i++)
     elem (0, i) = rv.elem (i);
 }
 
 FixedMatrix::FixedMatrix (const FixedColumnVector& cv)
-  : MArray2<FixedPoint> (cv.length (), 1, FixedPoint())
+  : MArray<FixedPoint> (dim_vector (cv.length (), 1), FixedPoint())
 {
   for (int i = 0; i < cv.length (); i++)
     elem (i, 0) = cv.elem (i);
@@ -262,7 +262,7 @@
 {
   int nr = rows();
   int nc = cols();
-  FixedMatrix retval(nr,nc);
+  FixedMatrix retval(dim_vector (nr,nc));
 
   for (int i = 0; i < nr; i++)
     for (int j = 0; j < nc; j++)
@@ -282,7 +282,7 @@
     return FixedMatrix();
   }
 
-  FixedMatrix retval(nr,nc);
+  FixedMatrix retval(dim_vector (nr, nc));
 
   for (int i = 0; i < nr; i++)
     for (int j = 0; j < nc; j++)
@@ -296,7 +296,7 @@
 {
   int nr = rows();
   int nc = cols();
-  FixedMatrix retval(nr,nc);
+  FixedMatrix retval(dim_vector (nr, nc));
 
   for (int i = 0; i < nr; i++)
     for (int j = 0; j < nc; j++)
@@ -316,7 +316,7 @@
     return FixedMatrix();
   }
 
-  FixedMatrix retval(nr,nc);
+  FixedMatrix retval(dim_vector (nr, nc));
 
   for (int i = 0; i < nr; i++)
     for (int j = 0; j < nc; j++)
@@ -418,7 +418,7 @@
 FixedMatrix&
 FixedMatrix::insert (const FixedMatrix& a, int r, int c)
 {
-  Array2<FixedPoint>::insert (a, r, c);
+  Array<FixedPoint>::insert (a, r, c);
   return *this;
 }
 
@@ -761,7 +761,7 @@
     {
       int a_len = a.length ();
 
-      retval.resize (len, a_len);
+    retval.resize (dim_vector (len, a_len));
 
       for (int i = 0; i < len; i++)
 	for (int j = 0; j < a_len; j++)
@@ -1440,14 +1440,14 @@
   return result;
 }
 
-MS_CMP_OPS(FixedMatrix, , FixedPoint, )
-MS_BOOL_OPS(FixedMatrix, FixedPoint, FixedPoint())
+MS_CMP_OPS(FixedMatrix, FixedPoint)
+MS_BOOL_OPS(FixedMatrix, FixedPoint)
 
-SM_CMP_OPS(FixedPoint, , FixedMatrix, )
-SM_BOOL_OPS(FixedPoint, FixedMatrix, FixedPoint())
+SM_CMP_OPS(FixedPoint, FixedMatrix)
+SM_BOOL_OPS(FixedPoint, FixedMatrix)
 
-MM_CMP_OPS(FixedMatrix, , FixedMatrix, )
-MM_BOOL_OPS(FixedMatrix, FixedMatrix, FixedPoint())
+MM_CMP_OPS(FixedMatrix, FixedMatrix)
+MM_BOOL_OPS(FixedMatrix, FixedMatrix)
 
 /*
 ;;; Local Variables: ***
Index: src/fixedCNDArray.h
===================================================================
--- src/fixedCNDArray.h	(revision 9213)
+++ src/fixedCNDArray.h	(working copy)
@@ -26,7 +26,7 @@
 #if !defined (octave_FixedCNDArray_h)
 #define octave_FixedCNDArray_h 1
 
-#include <octave/MArrayN.h>
+#include <octave/MArray.h>
 #include <octave/dMatrix.h>
 
 #include <octave/dNDArray.h>
@@ -45,19 +45,19 @@
 #include "fixedNDArray.h"
 
 class
-FixedComplexNDArray : public MArrayN<FixedPointComplex>
+FixedComplexNDArray : public MArray<FixedPointComplex>
 {
 public:
 
-  FixedComplexNDArray (void) : MArrayN<FixedPointComplex> () { }
+  FixedComplexNDArray (void) : MArray<FixedPointComplex> () { }
 
   FixedComplexNDArray (const dim_vector& dv) 
-    : MArrayN<FixedPointComplex> (dv) { }
+    : MArray<FixedPointComplex> (dv) { }
 
   FixedComplexNDArray (const dim_vector& dv, const FixedPointComplex val) :
-    MArrayN<FixedPointComplex> (dv, val) { }
+    MArray<FixedPointComplex> (dv, val) { }
 
-  FixedComplexNDArray (const MArrayN<int> &is, const MArrayN<int> &ds);
+  FixedComplexNDArray (const MArray<int> &is, const MArray<int> &ds);
 
   FixedComplexNDArray (const NDArray &is, const NDArray &ds);
 
@@ -69,7 +69,7 @@
   FixedComplexNDArray (Complex is, Complex ds, 
 		       const FixedComplexNDArray& a);
 
-  FixedComplexNDArray (const MArrayN<int> &is, const MArrayN<int> &ds, 
+  FixedComplexNDArray (const MArray<int> &is, const MArray<int> &ds, 
 		      const FixedComplexNDArray& a);
 
   FixedComplexNDArray (const NDArray &is, const NDArray &ds, 
@@ -83,7 +83,7 @@
 
   FixedComplexNDArray (Complex is, Complex ds, const FixedNDArray& a);
 
-  FixedComplexNDArray (const MArrayN<int> &is, const MArrayN<int> &ds, 
+  FixedComplexNDArray (const MArray<int> &is, const MArray<int> &ds, 
 		       const FixedNDArray& a);
 
   FixedComplexNDArray (const NDArray &is, const NDArray &ds, 
@@ -97,7 +97,7 @@
 
   FixedComplexNDArray (Complex is, Complex ds, const ComplexNDArray& a);
 
-  FixedComplexNDArray (const MArrayN<int> &is, const MArrayN<int> & ds, 
+  FixedComplexNDArray (const MArray<int> &is, const MArray<int> & ds, 
 		       const ComplexNDArray& a);
 
   FixedComplexNDArray (const NDArray &is, const NDArray & ds, 
@@ -111,7 +111,7 @@
 
   FixedComplexNDArray (Complex is, Complex ds, const NDArray& a);
 
-  FixedComplexNDArray (const MArrayN<int> &is, const MArrayN<int> & ds, 
+  FixedComplexNDArray (const MArray<int> &is, const MArray<int> & ds, 
 		       const NDArray& a);
 
   FixedComplexNDArray (const NDArray &is, const NDArray & ds, 
@@ -126,7 +126,7 @@
   FixedComplexNDArray (Complex is, Complex ds, const ComplexNDArray &a, 
 		       const ComplexNDArray &b);
 
-  FixedComplexNDArray (const MArrayN<int> &is, const MArrayN<int> &ds,
+  FixedComplexNDArray (const MArray<int> &is, const MArray<int> &ds,
 		       const ComplexNDArray &a, const ComplexNDArray &b);
 
   FixedComplexNDArray (const NDArray &is, const NDArray &ds,
@@ -140,13 +140,13 @@
   FixedComplexNDArray (const FixedNDArray& a, const FixedNDArray& b);
 
   FixedComplexNDArray (const FixedComplexNDArray& a)
-    : MArrayN<FixedPointComplex> (a) { }
+    : MArray<FixedPointComplex> (a) { }
 
-  FixedComplexNDArray (const MArrayN<FixedPointComplex>& a)
-    : MArrayN<FixedPointComplex> (a) { }
+  FixedComplexNDArray (const MArray<FixedPointComplex>& a)
+    : MArray<FixedPointComplex> (a) { }
 
-  FixedComplexNDArray (const ArrayN<FixedPointComplex>& a)
-    : MArrayN<FixedPointComplex> (a) { }
+  FixedComplexNDArray (const Array<FixedPointComplex>& a)
+    : MArray<FixedPointComplex> (a) { }
 
   ComplexNDArray sign (void) const;
   ComplexNDArray getdecsize (void) const;
@@ -166,7 +166,7 @@
 
   FixedComplexNDArray& operator = (const FixedComplexNDArray& a)
     {
-      MArrayN<FixedPointComplex>::operator = (a);
+      MArray<FixedPointComplex>::operator = (a);
       return *this;
     }
 
@@ -194,16 +194,16 @@
   FixedComplexNDArray sumsq (octave_idx_type dim = -1) const;
 
   FixedComplexNDArray max (octave_idx_type dim = 0) const;
-  FixedComplexNDArray max (ArrayN<octave_idx_type>& index, octave_idx_type dim = 0) const;
+  FixedComplexNDArray max (Array<octave_idx_type>& index, octave_idx_type dim = 0) const;
   FixedComplexNDArray min (octave_idx_type dim = 0) const;
-  FixedComplexNDArray min (ArrayN<octave_idx_type>& index, octave_idx_type dim = 0) const;
+  FixedComplexNDArray min (Array<octave_idx_type>& index, octave_idx_type dim = 0) const;
 
   FixedNDArray abs (void) const;
 
   FixedComplexMatrix fixed_complex_matrix_value (void) const;
 
   FixedComplexNDArray squeeze (void) const 
-    { return ArrayN<FixedPointComplex>::squeeze (); }
+    { return Array<FixedPointComplex>::squeeze (); }
 
   static void increment_index (Array<octave_idx_type>& ra_idx,
 			       const dim_vector& dimensions,
@@ -255,7 +255,7 @@
 private:
 
   FixedComplexNDArray (FixedPointComplex *d, const dim_vector& dv) 
-    : MArrayN<FixedPointComplex> (d, dv) { }
+    : MArray<FixedPointComplex> (d, dv) { }
 };
 
 
@@ -330,7 +330,7 @@
 NDND_CMP_OP_DECLS (FixedComplexNDArray, FixedComplexNDArray, )
 NDND_BOOL_OP_DECLS (FixedComplexNDArray, FixedComplexNDArray, )
 
-MARRAY_FORWARD_DEFS (MArrayN, FixedComplexNDArray, FixedPointComplex)
+MARRAY_FORWARD_DEFS (MArray, FixedComplexNDArray, FixedPointComplex)
 
 #endif
 

Reply to: