Mercurial > octave-nkf
changeset 19821:4ae2987c5f66
avoid variable possibly clobbered by longjmp warning from GCC
* __pchip_deriv__.cc (F__pchip_deriv__): Avoid GCC warning about
variables possibly clobbered by longjmp.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 20 Feb 2015 04:36:39 -0500 |
parents | d6652461dfbc |
children | 511b3ae4872b 52e625f0e361 |
files | libinterp/corefcn/__pchip_deriv__.cc |
diffstat | 1 files changed, 12 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/libinterp/corefcn/__pchip_deriv__.cc Fri Feb 20 04:08:04 2015 -0500 +++ b/libinterp/corefcn/__pchip_deriv__.cc Fri Feb 20 04:36:39 2015 -0500 @@ -85,21 +85,21 @@ return retval; } - const float *yvec = ymat.data (); FloatMatrix dmat (nyr, nyc); - float *dvec = dmat.fortran_vec (); octave_idx_type ierr; const octave_idx_type incfd = rows ? nyr : 1; - const octave_idx_type inc = rows ? 1 : nyr; + volatile const octave_idx_type inc = rows ? 1 : nyr; + volatile octave_idx_type k = 0; for (octave_idx_type i = (rows ? nyr : nyc); i > 0; i--) { F77_XFCN (pchim, PCHIM, (nx, xvec.data (), - yvec, dvec, incfd, &ierr)); + ymat.data () + k * inc, + dmat.fortran_vec () + k * inc, + incfd, &ierr)); - yvec += inc; - dvec += inc; + k++; if (ierr < 0) { @@ -132,21 +132,20 @@ return retval; } - const double *yvec = ymat.data (); Matrix dmat (nyr, nyc); - double *dvec = dmat.fortran_vec (); octave_idx_type ierr; const octave_idx_type incfd = rows ? nyr : 1; - const octave_idx_type inc = rows ? 1 : nyr; + volatile const octave_idx_type inc = rows ? 1 : nyr; + volatile octave_idx_type k = 0; for (octave_idx_type i = (rows ? nyr : nyc); i > 0; i--) { F77_XFCN (dpchim, DPCHIM, (nx, xvec.data (), - yvec, dvec, incfd, &ierr)); - - yvec += inc; - dvec += inc; + ymat.data () + k * inc, + dmat.fortran_vec () + k * inc, + incfd, &ierr)); + k++; if (ierr < 0) {