diff libinterp/corefcn/ordschur.cc @ 22135:407c66ae1e20

reduce warnings from GCC's link-time optimization feature (bug #48531) * f77-fcn.h (F77_DBLE_CMPLX, F77_CMPLX): Use C types instead of typedefs for std::complex<T> types. (F77_CMPLX_ARG, F77_CONST_CMPLX_ARG, F77_DBLE_CMPLX_ARG, F77_CONST_DBLE_CMPLX_ARG): New macros. * dot.cc, ordschur.cc, qz.cc, CColVector.cc, CMatrix.cc, CRowVector.cc, CSparse.cc, dSparse.cc, fCColVector.cc, fCMatrix.cc, fCRowVector.cc, f77-fcn.h, EIG.cc, aepbalance.cc, chol.cc, eigs-base.cc, fEIG.cc, gepbalance.cc, hess.cc, lo-specfun.cc, lu.cc, oct-convn.cc, qr.cc, qrp.cc, schur.cc, svd.cc: Use new macros for passing complex arguments to Fortran function. Always pass pointers to complex arguments.
author John W. Eaton <jwe@octave.org>
date Mon, 18 Jul 2016 09:38:57 -0400
parents 59cadee1c74b
children e43d83253e28
line wrap: on
line diff
--- a/libinterp/corefcn/ordschur.cc	Mon Jul 18 09:56:41 2016 -0400
+++ b/libinterp/corefcn/ordschur.cc	Mon Jul 18 09:38:57 2016 -0400
@@ -152,8 +152,8 @@
 
           F77_XFCN (ztrsen, ztrsen,
                     (F77_CONST_CHAR_ARG ("N"), F77_CONST_CHAR_ARG ("V"),
-                     sel.data (), n, S.fortran_vec (), n, U.fortran_vec (), n,
-                     w.fortran_vec (), m, cond1, cond2, work.fortran_vec (), n,
+                     sel.data (), n, F77_DBLE_CMPLX_ARG (S.fortran_vec ()), n, F77_DBLE_CMPLX_ARG (U.fortran_vec ()), n,
+                     F77_DBLE_CMPLX_ARG (w.fortran_vec ()), m, cond1, cond2, F77_DBLE_CMPLX_ARG (work.fortran_vec ()), n,
                      info));
 
           PREPARE_OUTPUT()
@@ -181,8 +181,8 @@
 
           F77_XFCN (ctrsen, ctrsen,
                     (F77_CONST_CHAR_ARG ("N"), F77_CONST_CHAR_ARG ("V"),
-                     sel.data (), n, S.fortran_vec (), n, U.fortran_vec (), n,
-                     w.fortran_vec (), m, cond1, cond2, work.fortran_vec (), n,
+                     sel.data (), n, F77_CMPLX_ARG (S.fortran_vec ()), n, F77_CMPLX_ARG (U.fortran_vec ()), n,
+                     F77_CMPLX_ARG (w.fortran_vec ()), m, cond1, cond2, F77_CMPLX_ARG (work.fortran_vec ()), n,
                      info));
 
           PREPARE_OUTPUT ()