octave-maintainers
[Top][All Lists]
Advanced

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

Re: Beyond 2.9.5


From: David Bateman
Subject: Re: Beyond 2.9.5
Date: Thu, 13 Apr 2006 22:11:42 +0200
User-agent: Mozilla Thunderbird 1.0.6-7.5.20060mdk (X11/20050322)

John W. Eaton wrote:

>On 12-Apr-2006, I wrote:
>
>| On  4-Apr-2006, David Bateman wrote:
>| 
>| | For the changes for the octave_value class I'm not sure I see what we
>| | are winning.
>| 
>| The change is not absolutely necessary (things work now) but it seems
>| like a somewhat cleaner way of doing things.  Given that the necessary
>| changes to user-defined types are relatively small, I think I'd like
>| to go ahead with this change.
>
>I checked in a relatively large patch for this change.  I'm attaching
>the changes I needed to adapt Octave Forge.  I used some #defines to
>preserve compatibility with older versions of Octave.
>  
>
Ok, then welcome everybody on 2.9.5+ to the bleeding edge :-)

>Note that the definition of OV_REP_TYPE is meant to be temporary, so
>when Octave Forge is cleaned for 3.0 it should be replaced by
>octave_base_value and the definition removed from octave/ov.h.
>
>jwe
>  
>
I don't believe the idea was to have another octave-forge release till
the tidy up was done and perhaps never again in a monolithic form.
Quentin's already tidied up quite a bit of octave-forge, though not all
(notable the system call output arg order). So frankly I see no reason
not to go straight to the final solution. If anyone disagrees with
making the CVS head of octave-forge a 2.9.5+ affair only, the nows a
good time to speak :-)...

BTW, do want to apply the patch to octave-forge, or have someone else do it?

D.


>  
>
>------------------------------------------------------------------------
>
>Index: extra/linear-algebra/ov-re-tri.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/extra/linear-algebra/ov-re-tri.cc,v
>retrieving revision 1.7
>diff -u -r1.7 ov-re-tri.cc
>--- extra/linear-algebra/ov-re-tri.cc  25 May 2005 03:43:38 -0000      1.7
>+++ extra/linear-algebra/ov-re-tri.cc  13 Apr 2006 13:03:51 -0000
>@@ -26,28 +26,28 @@
> {
> }
> 
>-octave_value *octave_tri::clone(void) const
>+OV_REP_TYPE *octave_tri::clone(void) const
> {
>   return new octave_tri(*this);
> }
> 
>-static octave_value *
>-tri_numeric_conversion_function(const octave_value& a)
>+static OV_REP_TYPE *
>+tri_numeric_conversion_function(const OV_REP_TYPE& a)
> {
>   CAST_CONV_ARG (const octave_tri &);
>   
>   return new octave_matrix (v.matrix_value());
> }
> 
>-type_conv_fcn
>+TYPE_CONV_FCN
> octave_tri::numeric_conversion_function (void) const
> {
>   return tri_numeric_conversion_function;
> }
> 
>-octave_value * octave_tri::try_narrowing_conversion(void)
>+OV_REP_TYPE * octave_tri::try_narrowing_conversion(void)
> {
>-  octave_value *retval = octave_matrix::try_narrowing_conversion();
>+  OV_REP_TYPE *retval = octave_matrix::try_narrowing_conversion();
> 
>   if ( retval==0){
>     int nr = matrix.rows ();
>Index: extra/linear-algebra/ov-re-tri.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/extra/linear-algebra/ov-re-tri.h,v
>retrieving revision 1.4
>diff -u -r1.4 ov-re-tri.h
>--- extra/linear-algebra/ov-re-tri.h   23 Nov 2003 14:21:38 -0000      1.4
>+++ extra/linear-algebra/ov-re-tri.h   13 Apr 2006 13:03:51 -0000
>@@ -18,6 +18,13 @@
> #include <octave/symtab.h>
> #include <octave/variables.h>
> 
>+#ifdef OV_REP_TYPE
>+#define TYPE_CONV_FCN OV_REP_TYPE::type_conv_fcn
>+#else
>+#define OV_REP_TYPE octave_value
>+#define TYPE_CONV_FCN type_conv_fcn
>+#endif
>+
> class Octave_map;
> class octave_value_list;
> 
>@@ -38,10 +45,10 @@
>    ~octave_tri(void);
>    octave_tri (const octave_tri& D);
> 
>-   octave_value *clone (void) const;
>+   OV_REP_TYPE *clone (void) const;
> 
>-   type_conv_fcn numeric_conversion_function (void) const;
>-   octave_value * try_narrowing_conversion(void);
>+   TYPE_CONV_FCN numeric_conversion_function (void) const;
>+   OV_REP_TYPE * try_narrowing_conversion(void);
> 
>    inline tri_type tri_value(void) const { return tri;};
>    void assign (const octave_value_list& idx, const Matrix& rhs);
>Index: main/comm/ov-galois.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/comm/ov-galois.cc,v
>retrieving revision 1.13
>diff -u -r1.13 ov-galois.cc
>--- main/comm/ov-galois.cc     9 Nov 2004 23:34:49 -0000       1.13
>+++ main/comm/ov-galois.cc     13 Apr 2006 13:03:51 -0000
>@@ -27,10 +27,14 @@
> #endif
> 
> #include <iostream>
>+#include <octave/config.h>
> #include <octave/unwind-prot.h>
>+#include <octave/pr-output.h>
> #include "galois.h"
> #include "ov-galois.h"
> 
>+extern int Vstruct_levels_to_print;
>+
> #ifdef CLASS_HAS_LOAD_SAVE
> #include <octave/byte-swap.h>
> #include <octave/ls-oct-ascii.h>
>Index: main/comm/ov-galois.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/comm/ov-galois.h,v
>retrieving revision 1.7
>diff -u -r1.7 ov-galois.h
>--- main/comm/ov-galois.h      9 Nov 2004 23:34:49 -0000       1.7
>+++ main/comm/ov-galois.h      13 Apr 2006 13:03:51 -0000
>@@ -61,6 +61,10 @@
> #define __GALOIS_INDEX_OF_STR "index_of"
> #endif
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> class octave_value_list;
> class tree_walker;
> 
>@@ -82,8 +86,8 @@
> 
>   ~octave_galois (void) { };
> 
>-  octave_value *clone (void) const { return new octave_galois (*this); }
>-  octave_value *empty_clone (void) const { return new octave_galois (); }
>+  OV_REP_TYPE *clone (void) const { return new octave_galois (*this); }
>+  OV_REP_TYPE *empty_clone (void) const { return new octave_galois (); }
> 
>   octave_value subsref (const std::string SUBSREF_STRREF type,
>                       const LIST<octave_value_list>& idx);
>Index: main/fixed/ov-fixed-complex.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed-complex.cc,v
>retrieving revision 1.4
>diff -u -r1.4 ov-fixed-complex.cc
>--- main/fixed/ov-fixed-complex.cc     9 Nov 2004 23:34:49 -0000       1.4
>+++ main/fixed/ov-fixed-complex.cc     13 Apr 2006 13:03:51 -0000
>@@ -204,10 +204,10 @@
>   return retval;
> }
> 
>-octave_value *
>+OV_REP_TYPE *
> octave_fixed_complex::try_narrowing_conversion (void)
> {
>-  octave_value *retval = 0;
>+  OV_REP_TYPE *retval = 0;
> 
>   if (imag (scalar) == FixedPoint())
>     retval = new octave_fixed (real (scalar));
>Index: main/fixed/ov-fixed-complex.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed-complex.h,v
>retrieving revision 1.5
>diff -u -r1.5 ov-fixed-complex.h
>--- main/fixed/ov-fixed-complex.h      12 Feb 2006 07:15:28 -0000      1.5
>+++ main/fixed/ov-fixed-complex.h      13 Apr 2006 13:03:51 -0000
>@@ -60,6 +60,10 @@
> #include "fixedComplex.h"
> #include "ov-fixed.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> class Octave_map;
> class octave_value_list;
> 
>@@ -115,11 +119,11 @@
> 
>   bool is_true (void) const { return (scalar != FixedPointComplex()); }
> 
>-  octave_value *clone (void) const { return new octave_fixed_complex (*this); 
>}
>-  octave_value *empty_clone (void) const 
>+  OV_REP_TYPE *clone (void) const { return new octave_fixed_complex (*this); }
>+  OV_REP_TYPE *empty_clone (void) const 
>                      { return new octave_fixed_complex (); }
> 
>-  octave_value *try_narrowing_conversion (void);
>+  OV_REP_TYPE *try_narrowing_conversion (void);
> 
>   octave_value do_index_op (const octave_value_list& idx, int resize_ok = 0);
> 
>Index: main/fixed/ov-fixed-cx-mat.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed-cx-mat.cc,v
>retrieving revision 1.5
>diff -u -r1.5 ov-fixed-cx-mat.cc
>--- main/fixed/ov-fixed-cx-mat.cc      9 Nov 2004 23:34:49 -0000       1.5
>+++ main/fixed/ov-fixed-cx-mat.cc      13 Apr 2006 13:03:51 -0000
>@@ -318,10 +318,10 @@
>   return retval;
> }
> 
>-octave_value *
>+OV_REP_TYPE *
> octave_fixed_complex_matrix::try_narrowing_conversion (void)
> {
>-  octave_value *retval = 0;
>+  OV_REP_TYPE *retval = 0;
> 
>   int nr = matrix.rows ();
>   int nc = matrix.cols ();
>Index: main/fixed/ov-fixed-cx-mat.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed-cx-mat.h,v
>retrieving revision 1.4
>diff -u -r1.4 ov-fixed-cx-mat.h
>--- main/fixed/ov-fixed-cx-mat.h       9 Nov 2004 23:34:49 -0000       1.4
>+++ main/fixed/ov-fixed-cx-mat.h       13 Apr 2006 13:03:51 -0000
>@@ -48,6 +48,10 @@
> #include "fixedCColVector.h"
> #include "fixedCMatrix.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> class Octave_map;
> class octave_value_list;
> 
>@@ -83,8 +87,8 @@
> 
>   ~octave_fixed_complex_matrix (void) { }
> 
>-  octave_value *clone (void) const { return new octave_fixed_complex_matrix 
>(*this); }
>-  octave_value *empty_clone (void) const { return new 
>octave_fixed_complex_matrix (); }
>+  OV_REP_TYPE *clone (void) const { return new octave_fixed_complex_matrix 
>(*this); }
>+  OV_REP_TYPE *empty_clone (void) const { return new 
>octave_fixed_complex_matrix (); }
> 
>   octave_value do_index_op (const octave_value_list& idx)
>     { return do_index_op (idx, 0); }
>@@ -96,7 +100,7 @@
>                        const std::list<octave_value_list>& idx,
>                        const octave_value& rhs);
> 
>-  octave_value *try_narrowing_conversion (void);
>+  OV_REP_TYPE *try_narrowing_conversion (void);
> 
>   bool is_complex_matrix (void) const { return true; }
> 
>Index: main/fixed/ov-fixed-mat.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed-mat.cc,v
>retrieving revision 1.6
>diff -u -r1.6 ov-fixed-mat.cc
>--- main/fixed/ov-fixed-mat.cc 9 Nov 2004 23:34:49 -0000       1.6
>+++ main/fixed/ov-fixed-mat.cc 13 Apr 2006 13:03:52 -0000
>@@ -290,10 +290,10 @@
>   return retval;
> }
> 
>-octave_value *
>+OV_REP_TYPE *
> octave_fixed_matrix::try_narrowing_conversion (void)
> {
>-  octave_value *retval = 0;
>+  OV_REP_TYPE *retval = 0;
> 
>   int nr = matrix.rows ();
>   int nc = matrix.cols ();
>Index: main/fixed/ov-fixed-mat.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed-mat.h,v
>retrieving revision 1.4
>diff -u -r1.4 ov-fixed-mat.h
>--- main/fixed/ov-fixed-mat.h  9 Nov 2004 23:34:49 -0000       1.4
>+++ main/fixed/ov-fixed-mat.h  13 Apr 2006 13:03:52 -0000
>@@ -55,6 +55,10 @@
> #include "fixedMatrix.h"
> #include "fixedCMatrix.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> class Octave_map;
> class octave_value_list;
> 
>@@ -84,8 +88,8 @@
> 
>   ~octave_fixed_matrix (void) { }
> 
>-  octave_value *clone (void) const { return new octave_fixed_matrix (*this); }
>-  octave_value *empty_clone (void) const { return new octave_fixed_matrix (); 
>}
>+  OV_REP_TYPE *clone (void) const { return new octave_fixed_matrix (*this); }
>+  OV_REP_TYPE *empty_clone (void) const { return new octave_fixed_matrix (); }
> 
>   octave_value do_index_op (const octave_value_list& idx)
>     { return do_index_op (idx, 0); }
>@@ -97,7 +101,7 @@
>                        const std::list<octave_value_list>& idx,
>                        const octave_value& rhs);
> 
>-  octave_value *try_narrowing_conversion (void);
>+  OV_REP_TYPE *try_narrowing_conversion (void);
> 
>   bool is_real_matrix (void) const { return true; }
> 
>Index: main/fixed/ov-fixed.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/fixed/ov-fixed.h,v
>retrieving revision 1.4
>diff -u -r1.4 ov-fixed.h
>--- main/fixed/ov-fixed.h      9 Nov 2004 23:34:49 -0000       1.4
>+++ main/fixed/ov-fixed.h      13 Apr 2006 13:03:52 -0000
>@@ -56,6 +56,10 @@
> #include "fixedComplex.h"
> #include "fixedCMatrix.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> class Octave_map;
> class octave_value_list;
> 
>@@ -101,8 +105,8 @@
> 
>   bool is_real_type (void) const { return true; }
> 
>-  octave_value *clone (void) const { return new octave_fixed (*this); }
>-  octave_value *empty_clone (void) const { return new octave_fixed (); }
>+  OV_REP_TYPE *clone (void) const { return new octave_fixed (*this); }
>+  OV_REP_TYPE *empty_clone (void) const { return new octave_fixed (); }
> 
>   octave_value do_index_op (const octave_value_list& idx, int resize_ok = 0);
>   idx_vector index_vector (void) const 
>Index: main/miscellaneous/Makefile
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/miscellaneous/Makefile,v
>retrieving revision 1.20
>diff -u -r1.20 Makefile
>--- main/miscellaneous/Makefile        29 Mar 2006 13:50:14 -0000      1.20
>+++ main/miscellaneous/Makefile        13 Apr 2006 13:03:52 -0000
>@@ -5,7 +5,7 @@
> endif
> 
> DISPATCH_LINK=$(patsubst %,%$(OCTLINK), dispatch_help builtin)
>-TARGETS=mfilename.oct waitbar.oct listen.oct xmlread.oct \
>+TARGETS=waitbar.oct listen.oct xmlread.oct \
>       csvexplode.oct csv2cell.oct csvconcat.oct cell2csv.oct
> 
> all:  $(TARGETS)
>@@ -14,9 +14,6 @@
>       -$(RM) $@
>       $(MKOCTLINK) dispatch.oct $@
> 
>-mfilename.oct: mfilename.cc
>-      $(MKOCTFILE) $(MISCDEFS) mfilename.cc
>-
> waitbar.oct:  waitbar.cc
>       $(MKOCTFILE) $(MISCDEFS) waitbar.cc $(TERM_LIB)
> 
>Index: main/octcdf/ov-ncatt.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncatt.cc,v
>retrieving revision 1.3
>diff -u -r1.3 ov-ncatt.cc
>--- main/octcdf/ov-ncatt.cc    9 Jan 2006 21:02:37 -0000       1.3
>+++ main/octcdf/ov-ncatt.cc    13 Apr 2006 13:03:52 -0000
>@@ -172,7 +172,12 @@
> 
>   ov_nc_put_att(get_ncid(),get_varid(),get_name(),get_nctype(),rhs);
> 
>+#ifdef OV_REP_TYPE
>+  count++;
>+  retval = octave_value(this);
>+#else
>   retval = octave_value(this, count + 1);
>+#endif
> 
>   return retval;
> 
>Index: main/octcdf/ov-ncatt.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncatt.h,v
>retrieving revision 1.3
>diff -u -r1.3 ov-ncatt.h
>--- main/octcdf/ov-ncatt.h     18 Feb 2006 22:06:27 -0000      1.3
>+++ main/octcdf/ov-ncatt.h     13 Apr 2006 13:03:52 -0000
>@@ -22,6 +22,10 @@
> 
> #include "ov-netcdf.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> typedef struct {
>   nc_type nctype;
>   dim_vector dimvec;
>@@ -43,7 +47,7 @@
>   octave_ncatt(octave_ncfile* ncvarp, int attnump);
>   octave_ncatt(octave_ncfile* ncvarp, std::string attnamep);
> 
>-  octave_value *clone(void) const { return new octave_ncatt(*this); }
>+  OV_REP_TYPE *clone(void) const { return new octave_ncatt(*this); }
> 
>   octave_value subsasgn(const std::string & type,
>                       const LIST < octave_value_list > &idx,
>Index: main/octcdf/ov-ncdim.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncdim.cc,v
>retrieving revision 1.3
>diff -u -r1.3 ov-ncdim.cc
>--- main/octcdf/ov-ncdim.cc    9 Jan 2006 21:02:37 -0000       1.3
>+++ main/octcdf/ov-ncdim.cc    13 Apr 2006 13:03:52 -0000
>@@ -75,7 +75,12 @@
> // # endif
> 
> 
>+// #ifdef OV_REP_TYPE
>+//   //  count++;
>+//   //  retval = octave_value(this);
>+// #else
> //   //  retval = octave_value(this, count + 1);
>+// #endif
> 
> //   return retval;
> 
>Index: main/octcdf/ov-ncdim.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncdim.h,v
>retrieving revision 1.3
>diff -u -r1.3 ov-ncdim.h
>--- main/octcdf/ov-ncdim.h     18 Feb 2006 22:06:27 -0000      1.3
>+++ main/octcdf/ov-ncdim.h     13 Apr 2006 13:03:52 -0000
>@@ -22,6 +22,10 @@
> 
> #include "ov-netcdf.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> typedef struct {
>   octave_ncfile* ncfile;
>   std::string dimname;
>@@ -39,7 +43,7 @@
> 
>   octave_ncdim(octave_ncfile* ncfile, int dimid);
> 
>-  octave_value *clone(void) const { return new octave_ncdim(*this); }
>+  OV_REP_TYPE *clone(void) const { return new octave_ncdim(*this); }
> 
> //   octave_value subsasgn(const std::string & type,
> //                    const LIST < octave_value_list > &idx,
>Index: main/octcdf/ov-ncfile.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncfile.cc,v
>retrieving revision 1.3
>diff -u -r1.3 ov-ncfile.cc
>--- main/octcdf/ov-ncfile.cc   9 Jan 2006 21:02:37 -0000       1.3
>+++ main/octcdf/ov-ncfile.cc   13 Apr 2006 13:03:52 -0000
>@@ -284,7 +284,13 @@
> 
>   read_info();
> 
>+#ifdef OV_REP_TYPE
>+  count++;
>+  retval = octave_value(this);
>+#else
>   retval = octave_value(this, count + 1);
>+#endif
>+
>   return retval;
> 
> 
>Index: main/octcdf/ov-ncfile.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncfile.h,v
>retrieving revision 1.2
>diff -u -r1.2 ov-ncfile.h
>--- main/octcdf/ov-ncfile.h    9 Jan 2006 21:02:37 -0000       1.2
>+++ main/octcdf/ov-ncfile.h    13 Apr 2006 13:03:52 -0000
>@@ -23,6 +23,9 @@
> 
> #include "ov-netcdf.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
> 
> typedef struct {
>   int ncid;
>@@ -40,7 +43,7 @@
> 
>   octave_ncfile(string filenamep, string open_mode);
> 
>-  octave_value *clone(void) const { return new octave_ncfile(*this); }
>+  OV_REP_TYPE *clone(void) const { return new octave_ncfile(*this); }
> 
> // x.v = y     x(idx).v = y     x{idx}.v = y
> 
>Index: main/octcdf/ov-ncvar.cc
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncvar.cc,v
>retrieving revision 1.5
>diff -u -r1.5 ov-ncvar.cc
>--- main/octcdf/ov-ncvar.cc    10 Feb 2006 23:13:33 -0000      1.5
>+++ main/octcdf/ov-ncvar.cc    13 Apr 2006 13:03:52 -0000
>@@ -232,7 +232,12 @@
>   // update characteristics
>   read_info();
> 
>+#ifdef OV_REP_TYPE
>+  count++;
>+  retval = octave_value(this);
>+#else
>   retval = octave_value(this, count + 1);
>+#endif
> 
>   return retval;
> };
>Index: main/octcdf/ov-ncvar.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/octcdf/ov-ncvar.h,v
>retrieving revision 1.5
>diff -u -r1.5 ov-ncvar.h
>--- main/octcdf/ov-ncvar.h     18 Feb 2006 22:06:27 -0000      1.5
>+++ main/octcdf/ov-ncvar.h     13 Apr 2006 13:03:52 -0000
>@@ -22,6 +22,10 @@
> 
> #include "ov-netcdf.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> typedef struct {
>   std::list<std::string> dimnames;
>   int dimids[NC_MAX_VAR_DIMS];
>@@ -55,7 +59,7 @@
> 
>   octave_ncvar(nc_type nctypep, std::list <std::string> 
> dimnamesp):octave_base_value(), ncv(NULL) { }
> 
>-  octave_value *clone(void) const { return new octave_ncvar(*this); }
>+  OV_REP_TYPE *clone(void) const { return new octave_ncvar(*this); }
> 
> // x.v = y     x(idx).v = y     x{idx}.v = y
> 
>Index: main/symbolic/ov-ex-mat.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/symbolic/ov-ex-mat.h,v
>retrieving revision 1.4
>diff -u -r1.4 ov-ex-mat.h
>--- main/symbolic/ov-ex-mat.h  17 Nov 2003 17:04:40 -0000      1.4
>+++ main/symbolic/ov-ex-mat.h  13 Apr 2006 13:03:52 -0000
>@@ -23,6 +23,10 @@
> 
> #include <ginac/ginac.h>
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> class octave_matrix;
> class octave_complex_matrix;
> 
>@@ -55,7 +59,7 @@
>       return GiNaC::ex(x);
>     }
>   
>-  octave_value *clone (void) 
>+  OV_REP_TYPE *clone (void) 
>     { 
>       return new octave_ex_matrix (*this); 
>     }
>Index: main/symbolic/ov-ex.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/symbolic/ov-ex.h,v
>retrieving revision 1.7
>diff -u -r1.7 ov-ex.h
>--- main/symbolic/ov-ex.h      17 Nov 2003 17:04:40 -0000      1.7
>+++ main/symbolic/ov-ex.h      13 Apr 2006 13:03:52 -0000
>@@ -27,6 +27,9 @@
> #include <octave/ov-scalar.h>
> #include "ov-vpa.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
> 
> class octave_complex;
> class octave_scalar;
>@@ -54,7 +57,7 @@
>       return x;
>     }
>   
>-  octave_value *clone (void) 
>+  OV_REP_TYPE *clone (void) 
>     { 
>       return new octave_ex (*this); 
>     }
>Index: main/symbolic/ov-relational.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/symbolic/ov-relational.h,v
>retrieving revision 1.4
>diff -u -r1.4 ov-relational.h
>--- main/symbolic/ov-relational.h      17 Nov 2003 17:04:41 -0000      1.4
>+++ main/symbolic/ov-relational.h      13 Apr 2006 13:03:52 -0000
>@@ -26,6 +26,10 @@
> #include <octave/ov-base.h>
> #include "ov-ex.h"
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> // relational values.
> 
> class
>@@ -55,7 +59,7 @@
> 
>   ~octave_relational (void) { }
> 
>-  octave_value *clone (void) { return new octave_relational (*this); }
>+  OV_REP_TYPE *clone (void) { return new octave_relational (*this); }
> 
> #ifdef HAVE_ND_ARRAYS
>   dim_vector dims (void) const { static dim_vector dv (1, 1); return dv; }
>Index: main/symbolic/ov-vpa.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/main/symbolic/ov-vpa.h,v
>retrieving revision 1.5
>diff -u -r1.5 ov-vpa.h
>--- main/symbolic/ov-vpa.h     17 Nov 2003 17:04:41 -0000      1.5
>+++ main/symbolic/ov-vpa.h     13 Apr 2006 13:03:52 -0000
>@@ -25,6 +25,10 @@
> #include <ginac/ginac.h>
> #include <octave/ov-base.h>
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> // vpa values.
> 
> class
>@@ -40,7 +44,7 @@
> 
>   ~octave_vpa (void) { }
> 
>-  octave_value *clone (void) { return new octave_vpa (*this); }
>+  OV_REP_TYPE *clone (void) { return new octave_vpa (*this); }
> 
> #if 0
>   void *operator new (size_t size);
>Index: nonfree/gpc/octave-gpc.h
>===================================================================
>RCS file: /cvsroot/octave/octave-forge/nonfree/gpc/octave-gpc.h,v
>retrieving revision 1.3
>diff -u -r1.3 octave-gpc.h
>--- nonfree/gpc/octave-gpc.h   5 Jan 2004 21:20:01 -0000       1.3
>+++ nonfree/gpc/octave-gpc.h   13 Apr 2006 13:03:52 -0000
>@@ -29,6 +29,10 @@
> #include <gpcl/gpc.h>
> }
> 
>+#ifndef OV_REP_TYPE
>+#define OV_REP_TYPE octave_value
>+#endif
>+
> void octave_gpc_free_polygon (gpc_polygon*);
> 
> gpc_polygon* get_gpc_pt (octave_value);
>@@ -62,7 +66,7 @@
> 
>   ~octave_gpc_polygon (void) { octave_gpc_free_polygon (polygon); }
> 
>-  octave_value* clone (void) { return new octave_gpc_polygon (*this); }
>+  OV_REP_TYPE* clone (void) { return new octave_gpc_polygon (*this); }
> 
>   bool is_defined (void) const { return true; }
> 
>  
>


-- 
David Bateman                                address@hidden
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph) 
Parc Les Algorithmes, Commune de St Aubin    +33 6 72 01 06 33 (Mob) 
91193 Gif-Sur-Yvette FRANCE                  +33 1 69 35 77 01 (Fax) 

The information contained in this communication has been classified as: 

[x] General Business Information 
[ ] Motorola Internal Use Only 
[ ] Motorola Confidential Proprietary



reply via email to

[Prev in Thread] Current Thread [Next in Thread]