changeset 4021:963507f8caf4

[project @ 2002-08-05 22:22:16 by jwe]
author jwe
date Mon, 05 Aug 2002 22:22:16 +0000
parents ca18dc3d5596
children 789c4112a37d
files src/ChangeLog src/data.cc test/octave.test/matrix/all-1.m test/octave.test/matrix/all-3.m test/octave.test/matrix/any-1.m test/octave.test/matrix/any-3.m
diffstat 6 files changed, 26 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Mon Aug 05 16:50:37 2002 +0000
+++ b/src/ChangeLog	Mon Aug 05 22:22:16 2002 +0000
@@ -1,3 +1,7 @@
+2002-08-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (ANY_ALL): Improve arg checks.
+
 2002-08-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
 	* ov.h (octave_value::assign_op): New enum values, op_pow_eq and
--- a/src/data.cc	Mon Aug 05 16:50:37 2002 +0000
+++ b/src/data.cc	Mon Aug 05 22:22:16 2002 +0000
@@ -56,20 +56,22 @@
  \
   int nargin = args.length (); \
  \
-  int dim = (nargin == 1 ? -1 : args(1).int_value (true) - 1); \
- \
-  if (! error_state) \
+  if (nargin == 1 || nargin == 2) \
     { \
-      if (dim <= 1 && dim >= -1) \
-	{ \
-	  if (nargin == 1 || nargin == 2) \
+      int dim = (nargin == 1 ? -1 : args(1).int_value (true) - 1); \
+ \
+      if (! error_state) \
+        { \
+          if (dim <= 1 && dim >= -1) \
 	    retval = args(0).FCN (dim); \
-	  else \
-	    print_usage (#FCN); \
-	} \
+          else \
+	    error (#FCN ": invalid dimension argument = %d", dim + 1); \
+        } \
       else \
-	error (#FCN ": invalid dimension argument = %d", dim + 1); \
+        error (#FCN ": expecting dimension argument to be an integer"); \
     } \
+  else \
+    print_usage (#FCN); \
  \
   return retval
 
--- a/test/octave.test/matrix/all-1.m	Mon Aug 05 16:50:37 2002 +0000
+++ b/test/octave.test/matrix/all-1.m	Mon Aug 05 22:22:16 2002 +0000
@@ -1,3 +1,6 @@
 x = ones (3);
 x(1,1) = 0;
-all (all (rand (3) + 1) == [1, 1, 1]) == 1 && all (all (x) == [0, 1, 1]) == 1
+(all (all (rand (3) + 1) == [1, 1, 1]) == 1
+ && all (all (x) == [0, 1, 1]) == 1
+ && all (x, 1) == [0, 1, 1]
+ && all (x, 2) == [0; 1; 1])
--- a/test/octave.test/matrix/all-3.m	Mon Aug 05 16:50:37 2002 +0000
+++ b/test/octave.test/matrix/all-3.m	Mon Aug 05 22:22:16 2002 +0000
@@ -1,1 +1,1 @@
-all (1, 2)
+all (1, 2, 3)
--- a/test/octave.test/matrix/any-1.m	Mon Aug 05 16:50:37 2002 +0000
+++ b/test/octave.test/matrix/any-1.m	Mon Aug 05 22:22:16 2002 +0000
@@ -1,3 +1,6 @@
 x = zeros (3);
 x(3,3) = 1;
-all (any (x) == [0, 0, 1]) == 1 && all (any (ones (3)) == [1, 1, 1]) == 1
+(all (any (x) == [0, 0, 1]) == 1
+ && all (any (ones (3)) == [1, 1, 1]) == 1
+ && any (x, 1) == [0, 0, 1]
+ && any (x, 2) == [0; 0; 1])
--- a/test/octave.test/matrix/any-3.m	Mon Aug 05 16:50:37 2002 +0000
+++ b/test/octave.test/matrix/any-3.m	Mon Aug 05 22:22:16 2002 +0000
@@ -1,1 +1,1 @@
-any (1, 2)
+any (1, 2, 3)