changeset 3798:6065668133b1

[project @ 2001-02-14 06:05:29 by jwe]
author jwe
date Wed, 14 Feb 2001 06:05:29 +0000
parents 7f5eeace12b3
children 36fe147645b6
files src/ChangeLog src/OPERATORS/op-b-b.cc src/pt-binop.cc
diffstat 3 files changed, 11 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Wed Feb 14 05:50:38 2001 +0000
+++ b/src/ChangeLog	Wed Feb 14 06:05:29 2001 +0000
@@ -1,4 +1,11 @@
-2001-02-09  Cai Jianming  <caijianming@yahoo.co.uk>
+2001-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-binop.cc (tree_boolean_expression::rvalue):
+	Don't cast result to double.
+
+	* OPERATORS/op-b-b.cc: Allow & and | operators to return bool values.
+
+2001-02-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
 	* data.cc (DATA_REDUCTION): Undo previous change.
 
--- a/src/OPERATORS/op-b-b.cc	Wed Feb 14 05:50:38 2001 +0000
+++ b/src/OPERATORS/op-b-b.cc	Wed Feb 14 06:05:29 2001 +0000
@@ -48,18 +48,8 @@
 
 DEFBINOP_OP (eq, bool, bool, ==)
 DEFBINOP_OP (ne, bool, bool, !=)
-
-BINOPDECL (el_and, a1, a2)
-{
-  CAST_BINOP_ARGS (const octave_bool&, const octave_bool&);
-  return octave_value (v1.bool_value () && v2.bool_value ());
-}
-
-BINOPDECL (el_or, a1, a2)
-{
-  CAST_BINOP_ARGS (const octave_bool&, const octave_bool&);
-  return octave_value (v1.bool_value () || v2.bool_value ());
-}
+DEFBINOP_OP (el_and, bool, bool, &&)
+DEFBINOP_OP (el_or, bool, bool, ||)
 
 void
 install_b_b_ops (void)
--- a/src/pt-binop.cc	Wed Feb 14 05:50:38 2001 +0000
+++ b/src/pt-binop.cc	Wed Feb 14 06:05:29 2001 +0000
@@ -191,7 +191,7 @@
 	    done:
 
 	      if (! error_state)
-		retval = octave_value (static_cast<double> (result));
+		retval = octave_value (result);
 	    }
 	}
     }