Mercurial > octave
changeset 27387:e1968e40e43f
Remove use of NoAlias in construction of array_value from Sparse object (bug #56752).
* Sparse.cc (array_value): Remove NoAlias declaration around local variable
retval which will be returned from function. Use xelem() rather than elem()
for efficiency.
author | Carlo de Falco <carlo.defalco@polimi.it> |
---|---|
date | Wed, 11 Sep 2019 08:24:01 -0700 |
parents | 69dc24383358 |
children | 90dfdf0d09ad |
files | liboctave/array/Sparse.cc |
diffstat | 1 files changed, 3 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/liboctave/array/Sparse.cc Wed Sep 11 02:45:29 2019 +0200 +++ b/liboctave/array/Sparse.cc Wed Sep 11 08:24:01 2019 -0700 @@ -2686,21 +2686,21 @@ Array<T> Sparse<T>::array_value () const { - NoAlias< Array<T>> retval (dims (), T ()); + Array<T> retval (dims (), T ()); if (rows () == 1) { octave_idx_type i = 0; for (octave_idx_type j = 0, nc = cols (); j < nc; j++) { if (cidx (j+1) > i) - retval(j) = data (i++); + retval.xelem (j) = data (i++); } } else { for (octave_idx_type j = 0, nc = cols (); j < nc; j++) for (octave_idx_type i = cidx (j), iu = cidx (j+1); i < iu; i++) - retval(ridx (i), j) = data (i); + retval.xelem (ridx (i), j) = data (i); } return retval;