Mercurial > hg > octave-avbm
changeset 3661:1d8d6429396a
[project @ 2000-04-23 08:23:08 by jwe]
author | jwe |
---|---|
date | Sun, 23 Apr 2000 08:23:09 +0000 |
parents | 2dc265765850 |
children | 74dc2917b75f |
files | src/ChangeLog src/pt-mat.cc |
diffstat | 2 files changed, 25 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2000-04-23 etienne grossmann <etienne@anonimo.isr.ist.utl.pt> + + * pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error): + New args x and y, for dimension mismatch info. + Change callers where appropriate. + (tm_const::init): Report mismatched column dimensions. + 2000-04-11 John W. Eaton <jwe@bevo.che.wisc.edu> * sysdep.cc (kbhit): Also clear cin if at EOF.
--- a/src/pt-mat.cc +++ b/src/pt-mat.cc @@ -103,7 +103,8 @@ tm_row_const_rep& operator = (const tm_row_const_rep&); - void eval_error (const char *msg, int l, int c) const; + void eval_error (const char *msg, int l, int c, + int x = -1, int y = -1) const; void eval_warning (const char *msg, int l, int c) const; }; @@ -213,7 +214,7 @@ else if (this_elt_nr != nr) { eval_error ("number of rows must match", - elt->line (), elt->column ()); + elt->line (), elt->column (), this_elt_nr, nr); break; } @@ -238,12 +239,22 @@ void tm_row_const::tm_row_const_rep::eval_error (const char *msg, int l, - int c) const + int c, int x, int y) const { if (l == -1 && c == -1) - ::error ("%s", msg); + { + if (x == -1 || y == -1) + ::error ("%s", msg); + else + ::error ("%s (%d != %d)", msg, x, y); + } else - ::error ("%s near line %d, column %d", msg, l, c); + { + if (x == -1 || y == -1) + ::error ("%s near line %d, column %d", msg, l, c); + else + ::error ("%s (%d != %d) near line %d, column %d", msg, x, y, l, c); + } } void @@ -380,7 +391,8 @@ } else if (this_elt_nc != nc) { - ::error ("number of columns must match"); + ::error ("number of columns must match (%d != %d)", + this_elt_nc, nc); break; }