diff src/ov-intx.h @ 5943:c038c2947ee1

[project @ 2006-08-18 21:27:03 by jwe]
author jwe
date Fri, 18 Aug 2006 21:27:04 +0000
parents c20eb7330d13
children 67b1a61a85ce
line wrap: on
line diff
--- a/src/ov-intx.h	Fri Aug 18 18:57:06 2006 +0000
+++ b/src/ov-intx.h	Fri Aug 18 21:27:04 2006 +0000
@@ -126,12 +126,15 @@
     }
 
   boolNDArray
-  bool_array_value (void) const
+  bool_array_value (bool warn = false) const
   {
     boolNDArray retval (dims ());
 
     octave_idx_type nel = numel ();
-  
+
+    if (warn && matrix.any_element_not_one_or_zero ())
+      gripe_logical_conversion ();
+
     for (octave_idx_type i = 0; i < nel; i++)
       retval(i) = static_cast<bool>(matrix(i));
 
@@ -331,10 +334,15 @@
     }
 
   boolNDArray
-  bool_array_value (void) const
+  bool_array_value (bool warn = false) const
   {
     boolNDArray retval (dim_vector (1, 1));
+
+    if (warn && scalar != 0.0 && scalar != 1.0)
+      gripe_logical_conversion ();
+
     retval(0) = static_cast<bool>(scalar);
+
     return retval;
   }