Mercurial > hg > octave-nkf
comparison liboctave/floatQR.cc @ 9235:b03953732530
Copy volatile variable to avoid MSVC compilation error
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Thu, 21 May 2009 21:07:36 +0100 |
parents | 20dfb885f877 |
children | 7918eb15040c |
comparison
equal
deleted
inserted
replaced
9234:e2f6dcade4c6 | 9235:b03953732530 |
---|---|
317 } | 317 } |
318 | 318 |
319 OCTAVE_LOCAL_BUFFER (float, w, kmax); | 319 OCTAVE_LOCAL_BUFFER (float, w, kmax); |
320 for (volatile octave_idx_type i = 0; i < js.length (); i++) | 320 for (volatile octave_idx_type i = 0; i < js.length (); i++) |
321 { | 321 { |
322 octave_idx_type ii = i; | |
322 FloatColumnVector utmp = u.column (jsi(i)); | 323 FloatColumnVector utmp = u.column (jsi(i)); |
323 F77_XFCN (sqrinc, SQRINC, (m, n + i, std::min (kmax, k + i), | 324 F77_XFCN (sqrinc, SQRINC, (m, n + ii, std::min (kmax, k + ii), |
324 q.fortran_vec (), q.rows (), | 325 q.fortran_vec (), q.rows (), |
325 r.fortran_vec (), r.rows (), js(i) + 1, | 326 r.fortran_vec (), r.rows (), js(ii) + 1, |
326 utmp.data (), w)); | 327 utmp.data (), w)); |
327 } | 328 } |
328 } | 329 } |
329 } | 330 } |
330 | 331 |
376 else if (nj > 0) | 377 else if (nj > 0) |
377 { | 378 { |
378 OCTAVE_LOCAL_BUFFER (float, w, k); | 379 OCTAVE_LOCAL_BUFFER (float, w, k); |
379 for (volatile octave_idx_type i = 0; i < js.length (); i++) | 380 for (volatile octave_idx_type i = 0; i < js.length (); i++) |
380 { | 381 { |
381 F77_XFCN (sqrdec, SQRDEC, (m, n - i, k == m ? k : k - i, | 382 octave_idx_type ii = i; |
383 F77_XFCN (sqrdec, SQRDEC, (m, n - ii, k == m ? k : k - ii, | |
382 q.fortran_vec (), q.rows (), | 384 q.fortran_vec (), q.rows (), |
383 r.fortran_vec (), r.rows (), js(i) + 1, w)); | 385 r.fortran_vec (), r.rows (), js(ii) + 1, w)); |
384 } | 386 } |
385 if (k < m) | 387 if (k < m) |
386 { | 388 { |
387 q.resize (m, k - nj); | 389 q.resize (m, k - nj); |
388 r.resize (k - nj, n - nj); | 390 r.resize (k - nj, n - nj); |