# HG changeset patch # User Jordi GutiƩrrez Hermoso # Date 1325220073 18000 # Node ID b5e819930fd50d20704ad63b0530da81fddc7e0b # Parent 32debc2e08bbeb4ebf720c875dd9f70b42b64da5 Give friendlier error message when indexing with default i or j (bug #35157) * ov-complex.h (index_vector): Override to give a friendlier error message. * test_index.m: Test for the new behaviour. diff -r 32debc2e08bb -r b5e819930fd5 src/ov-complex.h --- a/src/ov-complex.h Sat Dec 31 13:53:14 2011 -0500 +++ b/src/ov-complex.h Thu Dec 29 23:41:13 2011 -0500 @@ -79,6 +79,15 @@ octave_value do_index_op (const octave_value_list& idx, bool resize_ok = false); + // Use this to give a more specific error message + idx_vector index_vector (void) const + { + error ( + "attempted to use a complex scalar as an index\n" + " (forgot to initialize i or j?)"); + return idx_vector (); + } + octave_value any (int = 0) const { return (scalar != Complex (0, 0) diff -r 32debc2e08bb -r b5e819930fd5 test/test_index.m --- a/test/test_index.m Sat Dec 31 13:53:14 2011 -0500 +++ b/test/test_index.m Thu Dec 29 23:41:13 2011 -0500 @@ -349,3 +349,9 @@ %! assert (a, reshape (1:4,[1,1,1,4])); %!error (a(1:2,1:2) = 1:4) + +%!shared x +%! x = 1:5; +%!error x(i) +%!error x(j) +%!error x(1+i)