diff libinterp/octave-value/ov-complex.cc @ 22274:edcad35c364f

don't rely on std:: overloads of arg, conj, imag, and real for real args * lo-mappers.h (arg, conj, imag, real): Provide overloads for real arguments in octave::math namespace instead of importing them from std namespace. * __ichol__.cc, ls-mat4.cc, ls-mat5.cc, __eigs__.cc, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-sparse.cc, ov-flt-complex.cc, ov-flt-complex.h, ov-flt-cx-mat.cc, CMatrix.cc, CNDArray.cc, CSparse.cc, MatrixType.cc, dMatrix.cc, dSparse.cc, fCMatrix.cc, fCNDArray.cc, fMatrix.cc, chol.cc, eigs-base.cc, lo-mappers.cc, lo-specfun.cc, sparse-qr.cc: Update for arg, conj, imag, and real functions in octave::math namespace. Prefer member function versions of real and imag for simple variables. Use std:: namespace versions directly for known complex values. Use octave::math namespace versions otherwise
author John W. Eaton <jwe@octave.org>
date Thu, 11 Aug 2016 16:26:56 -0400
parents e43d83253e28
children 8b18f46f6427
line wrap: on
line diff
--- a/libinterp/octave-value/ov-complex.cc	Fri Aug 12 00:19:11 2016 +0100
+++ b/libinterp/octave-value/ov-complex.cc	Thu Aug 11 16:26:56 2016 -0400
@@ -105,10 +105,10 @@
 {
   octave_base_value *retval = 0;
 
-  double im = std::imag (scalar);
+  double im = scalar.imag ();
 
   if (im == 0.0)
-    retval = new octave_scalar (std::real (scalar));
+    retval = new octave_scalar (scalar.real ());
 
   return retval;
 }
@@ -136,7 +136,7 @@
 octave_complex::index_vector (bool) const
 {
   std::ostringstream buf;
-  buf << std::real (scalar) << std::showpos << std::imag (scalar) << "i";
+  buf << scalar.real () << std::showpos << scalar.imag () << "i";
   complex_index_exception e (buf.str ());
 
   throw e;
@@ -151,7 +151,7 @@
     warn_implicit_conversion ("Octave:imag-to-real",
                               "complex scalar", "real scalar");
 
-  retval = std::real (scalar);
+  retval = scalar.real ();
 
   return retval;
 }
@@ -165,7 +165,7 @@
     warn_implicit_conversion ("Octave:imag-to-real",
                               "complex scalar", "real scalar");
 
-  retval = std::real (scalar);
+  retval = scalar.real ();
 
   return retval;
 }
@@ -179,7 +179,7 @@
     warn_implicit_conversion ("Octave:imag-to-real",
                               "complex scalar", "real matrix");
 
-  retval = Matrix (1, 1, std::real (scalar));
+  retval = Matrix (1, 1, scalar.real ());
 
   return retval;
 }
@@ -193,7 +193,7 @@
     warn_implicit_conversion ("Octave:imag-to-real",
                               "complex scalar", "real matrix");
 
-  retval = FloatMatrix (1, 1, std::real (scalar));
+  retval = FloatMatrix (1, 1, scalar.real ());
 
   return retval;
 }
@@ -207,7 +207,7 @@
     warn_implicit_conversion ("Octave:imag-to-real",
                               "complex scalar", "real matrix");
 
-  retval = NDArray (dim_vector (1, 1), std::real (scalar));
+  retval = NDArray (dim_vector (1, 1), scalar.real ());
 
   return retval;
 }
@@ -221,7 +221,7 @@
     warn_implicit_conversion ("Octave:imag-to-real",
                               "complex scalar", "real matrix");
 
-  retval = FloatNDArray (dim_vector (1, 1), std::real (scalar));
+  retval = FloatNDArray (dim_vector (1, 1), scalar.real ());
 
   return retval;
 }
@@ -463,8 +463,8 @@
   double *pr = static_cast<double *> (retval->get_data ());
   double *pi = static_cast<double *> (retval->get_imag_data ());
 
-  pr[0] = std::real (scalar);
-  pi[0] = std::imag (scalar);
+  pr[0] = scalar.real ();
+  pi[0] = scalar.imag ();
 
   return retval;
 }