diff liboctave/MDiagArray2.cc @ 4187:dda53b247bc8

[project @ 2002-11-19 18:54:58 by jwe]
author jwe
date Tue, 19 Nov 2002 18:54:58 +0000
parents 47d3baea432d
children 5719210fff4c
line wrap: on
line diff
--- a/liboctave/MDiagArray2.cc	Tue Nov 19 00:33:40 2002 +0000
+++ b/liboctave/MDiagArray2.cc	Tue Nov 19 18:54:58 2002 +0000
@@ -33,6 +33,9 @@
 
 #include "MArray-defs.h"
 
+// Some functions return a reference to this object after a failure.
+template <class T> MDiagArray2<T> MDiagArray2<T>::nil_array;
+
 // Two dimensional diagonal array with math ops.
 
 // Element by element MDiagArray2 by MDiagArray2 ops.
@@ -50,8 +53,7 @@
   if (r != b_nr || c != b_nc)
     {
       gripe_nonconformant ("operator +=", r, c, b_nr, b_nc);
-      static MDiagArray2<T> foo;
-      return foo;
+      return MDiagArray2<T>::nil_array;
     }
   else
     {
@@ -74,8 +76,7 @@
   if (r != b_nr || c != b_nc)
     {
       gripe_nonconformant ("operator -=", r, c, b_nr, b_nc);
-      static MDiagArray2<T> foo;
-      return foo;
+      return MDiagArray2<T>::nil_array;
     }
   else
     {