diff liboctave/fCDiagMatrix.cc @ 9825:7483fe200fab

narrow complex values with negative zero imaginary parts
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 13 Nov 2009 12:34:46 +0100
parents f80c566bc751
children 4c0cdbe0acca
line wrap: on
line diff
--- a/liboctave/fCDiagMatrix.cc
+++ b/liboctave/fCDiagMatrix.cc
@@ -412,16 +412,7 @@
 bool
 FloatComplexDiagMatrix::all_elements_are_real (void) const
 {
-  octave_idx_type len = length ();
-  for (octave_idx_type i = 0; i < len; i++)
-    {
-      float ip = std::imag (elem (i, i));
-
-      if (ip != 0.0 || lo_ieee_signbit (ip))
-        return false;
-    }
-
-  return true;
+  return mx_inline_all_real (length (), data ());
 }
 
 // diagonal matrix by diagonal matrix -> diagonal matrix operations