# HG changeset patch # User Jaroslav Hajek # Date 1251953993 -7200 # Node ID a04352386a6b91ac4c1d4d9fa97796ba58804d2d # Parent dfc68e6d8741270cdb654446e6aa6e9d41eb7a51 clear index cache on ++,-- operators diff -r dfc68e6d8741 -r a04352386a6b src/ChangeLog --- a/src/ChangeLog Wed Sep 02 13:11:06 2009 -0400 +++ b/src/ChangeLog Thu Sep 03 06:59:53 2009 +0200 @@ -1,3 +1,13 @@ +2009-09-03 Jaroslav Hajek + + * ov-re-mat.h (octave_matrix::increment, octave_matrix::decrement): + Use matrix_ref. + * ov-flt-re-mat.h (octave_float_matrix::increment, + octave_float_matrix::decrement): Use matrix_ref. + * ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::increment, + OCTAVE_VALUE_INT_MATRIX_T::decrement): + Use matrix_ref. + 2009-09-02 John W. Eaton * graphics.cc (axes::properties::calc_ticklabels): diff -r dfc68e6d8741 -r a04352386a6b src/ov-flt-re-mat.h --- a/src/ov-flt-re-mat.h Wed Sep 02 13:11:06 2009 -0400 +++ b/src/ov-flt-re-mat.h Thu Sep 03 06:59:53 2009 +0200 @@ -163,9 +163,10 @@ octave_value diag (octave_idx_type k = 0) const; - void increment (void) { matrix += 1.0; } + // Use matrix_ref here to clear index cache. + void increment (void) { matrix_ref () += 1.0; } - void decrement (void) { matrix -= 1.0; } + void decrement (void) { matrix_ref () -= 1.0; } octave_value convert_to_str_internal (bool pad, bool force, char type) const; diff -r dfc68e6d8741 -r a04352386a6b src/ov-intx.h --- a/src/ov-intx.h Wed Sep 02 13:11:06 2009 -0400 +++ b/src/ov-intx.h Thu Sep 03 06:59:53 2009 +0200 @@ -299,9 +299,10 @@ return retval; } + // Use matrix_ref here to clear index cache. void increment (void) { - matrix += OCTAVE_INT_T (1); + matrix_ref() += OCTAVE_INT_T (1); if (OCTAVE_INT_T::get_math_trunc_flag ()) gripe_unop_integer_math_truncated ("++", type_name (). c_str ()); @@ -310,7 +311,7 @@ void decrement (void) { - matrix -= OCTAVE_INT_T (1); + matrix_ref() -= OCTAVE_INT_T (1); if (OCTAVE_INT_T::get_math_trunc_flag ()) gripe_unop_integer_math_truncated ("--", type_name (). c_str ()); OCTAVE_INT_T::clear_conv_flag (); diff -r dfc68e6d8741 -r a04352386a6b src/ov-re-mat.h --- a/src/ov-re-mat.h Wed Sep 02 13:11:06 2009 -0400 +++ b/src/ov-re-mat.h Thu Sep 03 06:59:53 2009 +0200 @@ -177,9 +177,10 @@ octave_value diag (octave_idx_type k = 0) const; - void increment (void) { matrix += 1.0; } + // Use matrix_ref here to clear index cache. + void increment (void) { matrix_ref () += 1.0; } - void decrement (void) { matrix -= 1.0; } + void decrement (void) { matrix_ref () -= 1.0; } octave_value convert_to_str_internal (bool pad, bool force, char type) const;