changeset 28888:06c8e0877864

maint: Backed out changeset 09c071328135. C++ files still need BIST tests for number of inputs & outputs.
author Rik <rik@octave.org>
date Sat, 10 Oct 2020 07:28:34 -0700
parents 09c071328135
children 43e7118c9f2a
files libinterp/corefcn/chol.cc libinterp/corefcn/colamd.cc libinterp/corefcn/colloc.cc libinterp/corefcn/conv2.cc libinterp/corefcn/data.cc libinterp/corefcn/det.cc libinterp/corefcn/dot.cc libinterp/corefcn/eig.cc libinterp/corefcn/ellipj.cc libinterp/corefcn/event-manager.cc libinterp/corefcn/find.cc libinterp/corefcn/gcd.cc libinterp/corefcn/givens.cc libinterp/corefcn/hash.cc libinterp/corefcn/hess.cc libinterp/corefcn/hex2num.cc libinterp/corefcn/input.cc libinterp/corefcn/inv.cc libinterp/corefcn/lu.cc libinterp/corefcn/mappers.cc libinterp/corefcn/max.cc libinterp/corefcn/pr-output.cc libinterp/corefcn/psi.cc libinterp/corefcn/qr.cc libinterp/corefcn/schur.cc libinterp/corefcn/sparse.cc libinterp/corefcn/strfind.cc libinterp/corefcn/strfns.cc libinterp/corefcn/svd.cc libinterp/corefcn/sylvester.cc libinterp/corefcn/time.cc libinterp/corefcn/toplev.cc libinterp/corefcn/tril.cc libinterp/corefcn/tsearch.cc libinterp/corefcn/typecast.cc libinterp/corefcn/utils.cc libinterp/corefcn/variables.cc libinterp/dldfcn/gzip.cc libinterp/octave-value/ov-class.cc libinterp/octave-value/ov-fcn-handle.cc libinterp/octave-value/ov.cc
diffstat 41 files changed, 243 insertions(+), 156 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/corefcn/chol.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/chol.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -345,7 +345,7 @@
 %! [Q, p] = chol (A);
 %! assert (p != 0);
 
-%!error <Invalid call> chol ()
+%!error chol ()
 %!error <matrix must be positive definite> chol ([1, 2; 3, 4])
 %!error <requires square matrix> chol ([1, 2; 3, 4; 5, 6])
 %!error <optional arguments must be strings> chol (1, 2)
--- a/libinterp/corefcn/colamd.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/colamd.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -777,7 +777,8 @@
 %!assert (etree (sparse ([1,2], [1,2], [i,i], 2, 2)), [0, 0]);
 %!assert (etree (gallery ("poisson", 16)), [2:256, 0]);
 
-%!error <Invalid call> etree ()
+%!error etree ()
+%!error etree (1, 2, 3)
 %!error <S must be a sparse matrix> etree ([1, 2; 3, 4])
 %!error <TYP must be a string> etree (speye (2), 3)
 %!error <is not square> etree (sprand (2, 4, .25))
--- a/libinterp/corefcn/colloc.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/colloc.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -103,7 +103,8 @@
 %!assert (colloc (1, "left", "right"), [0; 0.5; 1])
 
 ## Test input validation
-%!error <Invalid call> colloc ()
+%!error colloc ()
+%!error colloc (1,2,3,4)
 %!error <N must be a scalar> colloc (ones (2,2))
 %!error <N cannot be NaN> colloc (NaN)
 %!error <N must be positive> colloc (-1)
--- a/libinterp/corefcn/conv2.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/conv2.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -291,8 +291,8 @@
 %! assert (B, A);   # Yes, this test is for *exact* equivalence.
 
 ## Test input validation
-%!error <Invalid call> conv2 ()
-%!error <Invalid call> conv2 (1)
+%!error conv2 ()
+%!error conv2 (1)
 %!error <must be 1-D vectors or 2-D matrices> conv2 (ones (2), ones (2,2,2))
 %!error <SHAPE type not valid> conv2 (1,2, "NOT_A_SHAPE")
 ## Test alternate calling form which should be 2 vectors and a matrix
@@ -563,8 +563,8 @@
 %!assert (class (convn (ones(5, "uint8"), rand(3))), "double")
 %!assert (class (convn (rand (3, "single"), ones(5, "uint8"))), "single")
 
-%!error <Invalid call> convn ()
-%!error <Invalid call> convn (1)
+%!error convn ()
+%!error convn (1)
 %!error <SHAPE type not valid> convn (1,2, "NOT_A_SHAPE")
 %!error convn (rand (3), 1, 1)
 */
--- a/libinterp/corefcn/data.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/data.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -120,7 +120,8 @@
 %! assert (all (x, 1) == [0, 1, 1]);
 %! assert (all (x, 2) == [0; 1; 1]);
 
-%!error <Invalid call> all ()
+%!error all ()
+%!error all (1, 2, 3)
 */
 
 DEFUN (any, args, ,
@@ -184,7 +185,8 @@
 %! assert (any (x, 1) == [0, 0, 1]);
 %! assert (any (x, 2) == [0; 0; 1]);
 
-%!error <Invalid call> any ()
+%!error any ()
+%!error any (1, 2, 3)
 */
 
 // These mapping functions may also be useful in other places, eh?
@@ -306,7 +308,8 @@
 %! assert (nnz (y), 3);
 %! assert (y, sparse (atan2 (0:3, zeros (1,4))));
 
-%!error <Invalid call> atan2 ()
+%!error atan2 ()
+%!error atan2 (1, 2, 3)
 */
 
 static octave_value
@@ -722,7 +725,8 @@
 
 %!error rem (uint (8), int8 (5))
 %!error rem (uint8 ([1, 2]), uint8 ([3, 4, 5]))
-%!error <Invalid call> rem ()
+%!error rem ()
+%!error rem (1, 2, 3)
 %!error rem ([1, 2], [3, 4, 5])
 %!error rem (i, 1)
 */
@@ -1013,7 +1017,7 @@
 %!assert (cumprod (single ([2, 3; 4, 5]), 1), single ([2, 3; 8, 15]))
 %!assert (cumprod (single ([2, 3; 4, 5]), 2), single ([2, 6; 4, 20]))
 
-%!error <Invalid call> cumprod ()
+%!error cumprod ()
 */
 
 DEFUN (cumsum, args, ,
@@ -1163,7 +1167,7 @@
 %!assert (cumsum (single ([1, 2; 3, 4]), 1), single ([1, 2; 4, 6]))
 %!assert (cumsum (single ([1, 2; 3, 4]), 2), single ([1, 3; 3, 7]))
 
-%!error <Invalid call> cumsum ()
+%!error cumsum ()
 */
 
 DEFUN (diag, args, ,
@@ -1498,7 +1502,8 @@
 %!assert (prod ([true false; true true], 2, "native"), [false; true])
 
 ## Test input validation
-%!error <Invalid call> prod ()
+%!error prod ()
+%!error prod (1,2,3)
 %!error <unrecognized type argument 'foobar'> prod (1, "foobar")
 */
 
@@ -2860,7 +2865,8 @@
 %!assert (rows (zeros (2,0)), 2)
 
 ## Test input validation
-%!error <Invalid call> rows ()
+%!error rows ()
+%!error rows (1,2)
 */
 
 DEFUN (columns, args, ,
@@ -3105,7 +3111,8 @@
 ;-)
 %!assert (sum ("Octave") + "8", sumsq (primes (17)))
 
-%!error <Invalid call> sum ()
+%!error sum ()
+%!error sum (1,2,3)
 %!error <unrecognized type argument 'foobar'> sum (1, "foobar")
 */
 
@@ -3146,7 +3153,7 @@
 %!assert (sumsq (single ([1, 2; 3, 4]), 1), single ([10, 20]))
 %!assert (sumsq (single ([1, 2; 3, 4]), 2), single ([5; 25]))
 
-%!error <Invalid call> sumsq ()
+%!error sumsq ()
 */
 
 DEFUN (islogical, args, ,
@@ -3233,7 +3240,7 @@
 %!assert (! isinteger ("parrot"))
 %!assert (! isinteger ([1, 2, 3]))
 
-%!error <Invalid call> isinteger ()
+%!error isinteger ()
 %!error isinteger ("multiple", "parameters")
 */
 
@@ -3263,7 +3270,8 @@
 %!assert (iscomplex ({i}), false)
 
 ## Test input validation
-%!error <Invalid call> iscomplex ()
+%!error iscomplex ()
+%!error iscomplex (1, 2)
 */
 
 DEFUN (isfloat, args, ,
@@ -3693,7 +3701,8 @@
 %! assert (isscalar (s));
 
 ## Test input validation
-%!error <Invalid call> isscalar ()
+%!error isscalar ()
+%!error isscalar (1, 2)
 */
 
 DEFUN (isvector, args, ,
@@ -3733,7 +3742,7 @@
 %! assert (isvector (s), true);
 
 ## Test input validation
-%!error <Invalid call> isvector ()
+%!error isvector ()
 %!error isvector ([1, 2], 2)
 */
 
@@ -3782,7 +3791,7 @@
 %! assert (isrow (s), true);
 
 ## Test input validation
-%!error <Invalid call> isrow ()
+%!error isrow ()
 %!error isrow ([1, 2], 2)
 */
 
@@ -3831,7 +3840,7 @@
 %! assert (iscolumn (s));
 
 ## Test input validation
-%!error <Invalid call> iscolumn ()
+%!error iscolumn ()
 %!error iscolumn ([1, 2], 2)
 */
 
@@ -3880,7 +3889,7 @@
 %! s.a = 1;
 %! assert (ismatrix (s), true);
 
-%!error <Invalid call> ismatrix ()
+%!error ismatrix ()
 %!error ismatrix ([1, 2; 3, 4], 2)
 */
 
@@ -3921,7 +3930,7 @@
 %!assert (sparse (([1, 2; 3, 4])))
 
 ## Test input validation
-%!error <Invalid call> issquare ()
+%!error issquare ()
 %!error issquare ([1, 2; 3, 4], 2)
 */
 
@@ -5380,7 +5389,8 @@
 ##%!assert <56933> (linspace (-Inf, 0, 4), [-Inf, NaN, NaN, 0])
 ##%!assert <56933> (linspace (Inf, 0, 4), [Inf, NaN, NaN, 0])
 
-%!error <Invalid call> linspace ()
+%!error linspace ()
+%!error linspace (1, 2, 3, 4)
 %!error <N must be a scalar> linspace (1, 2, [3, 4])
 %!error <START, END must be scalars or vectors> linspace (ones (2,2), 2, 3)
 %!error <START, END must be scalars or vectors> linspace (2, ones (2,2), 3)
@@ -5605,7 +5615,8 @@
 %! s.a = 1;
 %! fail ("reshape (s, 2, 3)", "can't reshape 1x1 array to 2x3 array");
 
-%!error <Invalid call> reshape ()
+%!error reshape ()
+%!error reshape (1, 2, 3, 4)
 %!error <SIZE must have 2 or more dimensions> reshape (1:3, 3)
 %!error <SIZE must be non-negative> reshape (1:3, [3 -1])
 %!error <only a single dimension can be unknown> reshape (1:3, 1,[],[],3)
@@ -5672,7 +5683,8 @@
 %!assert (vec ([1, 3; 2, 4], 3), reshape ([1, 2, 3, 4], 1, 1, 4))
 %!assert (vec ([1, 3; 2, 4], 3), shiftdim (vec ([1, 3; 2, 4]), -2))
 
-%!error <Invalid call> vec ()
+%!error vec ()
+%!error vec (1, 2, 3)
 %!error vec ([1, 2; 3, 4], 0)
 */
 
@@ -5938,7 +5950,8 @@
 %! assert (norm (A), 1);
 
 ## Test input validation
-%!error <Invalid call> norm ()
+%!error norm ()
+%!error norm (1,2,3,4)
 %!error <unrecognized option> norm (1, "invalid")
 %!error <unrecognized option> norm (1, "rows", "invalid")
 %!error <unrecognized option> norm (1, "invalid", "rows")
@@ -6115,8 +6128,8 @@
 %!assert (plus (1,2,3,4,5,6,7,8,9), sum (1:9))
 
 ## Test input validation for all functions which use binary_assoc_op_defun_body
-%!error <Invalid call> plus ()
-%!error <Invalid call> plus (1)
+%!error plus ()
+%!error plus (1)
 */
 
 DEFUN (minus, args, ,
@@ -6858,7 +6871,8 @@
 %! [v, i] = sort (a);
 %! assert (i, [1, 4, 2, 5, 3]);
 
-%!error <Invalid call> sort ()
+%!error sort ()
+%!error sort (1, 2, 3, 4)
 */
 
 // Sort the rows of the matrix @var{a} according to the order
@@ -7050,7 +7064,8 @@
 %!assert (issorted ("", "rows", "descend"))
 
 ## Test input validation
-%!error <Invalid call> issorted ()
+%!error issorted ()
+%!error issorted (1,2,3,4)
 %!error <second argument must be a string> issorted (1, 2)
 %!error <second argument must be a string> issorted (1, {"rows"})
 %!error <sparse matrices not yet supported> issorted (sparse ([1 2 3]), "rows")
@@ -7160,8 +7175,8 @@
 
 %!assert <*51329> (nth_element ([1:10], [1:10]), [1:10])
 
-%!error <Invalid call> nth_element ()
-%!error <Invalid call> nth_element (1)
+%!error nth_element ()
+%!error nth_element (1)
 %!error nth_element (1, 1.5)
 %!error nth_element (1, 2, 3, 4)
 %!error nth_element ("abcd", 3)
@@ -7835,7 +7850,8 @@
 %!assert (diff ([1, 2; 5, 4; 8, 7; 9, 6; 3, 1], 3), [-1, -5; -5, 0])
 %!assert (isempty (diff (1)))
 
-%!error <Invalid call> diff ()
+%!error diff ()
+%!error diff (1, 2, 3, 4)
 %!error diff ("foo")
 %!error diff ([1, 2; 3, 4], -1)
 */
@@ -8054,7 +8070,8 @@
 %!assert (base64_encode (uint64 ([0 0 0])), "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")
 %!assert (base64_encode (uint8 ([255 255 255])), "////")
 
-%!error <Invalid call> base64_encode ()
+%!error base64_encode ()
+%!error base64_encode (1,2)
 %!error base64_encode ("A string")
 %!error base64_encode ({"A cell array"})
 %!error base64_encode (struct ())
@@ -8108,7 +8125,8 @@
 %! assert (outv, in(:).');
 %! assert (outm, in);
 
-%!error <Invalid call> base64_decode ()
+%!error base64_decode ()
+%!error base64_decode (1,2,3)
 %!error base64_decode (1, "this is not a valid set of dimensions")
 %!error <input was not valid base64> base64_decode (1)
 %!error <input was not valid base64> base64_decode ("AQ=")
@@ -8163,7 +8181,8 @@
 %! assert (outv, in(:).');
 %! assert (outm, in);
 
-%!error <Invalid call> __base64_decode_bytes__ ()
+%!error __base64_decode_bytes__ ()
+%!error __base64_decode_bytes__ (1,2,3)
 %!error __base64_decode_bytes__ (1, "this is not a valid set of dimensions")
 %!error <input was not valid base64> __base64_decode_bytes__ (1)
 */
--- a/libinterp/corefcn/det.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/det.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -230,6 +230,7 @@
 %!assert (det ([1, 2; 3, 4]), -2, 10*eps)
 %!assert (det (single ([1, 2; 3, 4])), single (-2), 10*eps ("single"))
 %!assert (det (eye (2000)), 1)
-%!error <Invalid call> det ()
+%!error det ()
+%!error det (1, 2)
 %!error <must be a square matrix> det ([1, 2; 3, 4; 5, 6])
 */
--- a/libinterp/corefcn/dot.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/dot.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -233,8 +233,9 @@
 %! assert (dot (x, x), 127);
 
 ## Test input validation
-%!error <Invalid call> dot ()
-%!error <Invalid call> dot (1)
+%!error dot ()
+%!error dot (1)
+%!error dot (1,2,3,4)
 %!error <X and Y must be numeric> dot ({1,2}, [3,4])
 %!error <X and Y must be numeric> dot ([1,2], {3,4})
 %!error <sizes of X and Y must match> dot ([1 2], [1 2 3])
@@ -422,8 +423,9 @@
 %! assert (size (z), [1, 0, 3]);
 
 ## Test input validation
-%!error <Invalid call> blkmm ()
-%!error <Invalid call> blkmm (1)
+%!error blkmm ()
+%!error blkmm (1)
+%!error blkmm (1,2,3)
 %!error <A and B must be numeric> blkmm ({1,2}, [3,4])
 %!error <A and B must be numeric> blkmm ([3,4], {1,2})
 %!error <A and B dimensions don't match> blkmm (ones (2,2), ones (3,3))
--- a/libinterp/corefcn/eig.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/eig.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -595,7 +595,7 @@
 %! A = diag([1e-16, 1e-15]);
 %! chol_qz_accuracy (A, A, true, false);
 
-%!error <Invalid call> eig ()
+%!error eig ()
 %!error eig (false)
 %!error eig ([1, 2; 3, 4], [4, 3; 2, 1], 1)
 
--- a/libinterp/corefcn/ellipj.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/ellipj.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -828,8 +828,9 @@
 %! D = 1/sqrt (2) * ones (size (x));
 %! assert (dn, D, 1e-6);
 
-%!error <Invalid call> ellipj ()
-%!error <Invalid call> ellipj (1)
+%!error ellipj ()
+%!error ellipj (1)
+%!error ellipj (1,2,3,4)
 %!warning <required value 0 <= M <= 1> ellipj (1,2);
 ## FIXME: errors commented out until lasterr() truly returns the last error.
 %!#error <M must be a scalar or matrix> ellipj (1, "1")
--- a/libinterp/corefcn/event-manager.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/event-manager.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -524,7 +524,7 @@
 }
 
 /*
-%!error <Invalid call> openvar ()
+%!error openvar ()
 %!error openvar ("a", "b")
 %!error <NAME must be a string> openvar (1:10)
 */
--- a/libinterp/corefcn/find.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/find.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -597,5 +597,5 @@
 %!assert (find ([2 0 1 0 5 0], Inf), [1, 3, 5])
 %!assert (find ([2 0 1 0 5 0], Inf, "last"), [1, 3, 5])
 
-%!error <Invalid call> find ()
+%!error find ()
 */
--- a/libinterp/corefcn/gcd.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/gcd.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -528,7 +528,7 @@
 %!error <all values must be integers> gcd (1/2, 2)
 %!error <all complex parts must be integers> gcd (e + i*pi, 1)
 
-%!error <Invalid call> gcd ()
+%!error gcd ()
 
 %!test
 %! s.a = 1;
--- a/libinterp/corefcn/givens.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/givens.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -186,7 +186,7 @@
 %!assert (givens (1,0), eye (2))
 %!assert (givens (0,1), [0, 1; -1 0])
 
-%!error <Invalid call> givens ()
-%!error <Invalid call> givens (1)
+%!error givens ()
+%!error givens (1)
 %!error [a,b,c] = givens (1, 1)
 */
--- a/libinterp/corefcn/hash.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/hash.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -227,7 +227,7 @@
 %! unlink (tfile);
 
 ## Test bad function calls
-%!error <Invalid call> hash ()
+%!error hash ()
 %!error hash ("")
 %!error hash ("", "")
 %!error hash ("", "", "")
--- a/libinterp/corefcn/hess.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/hess.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -147,7 +147,7 @@
 %! [p, h] = hess (a);
 %! assert (p * h * p', a, sqrt (eps ("single")));
 
-%!error <Invalid call> hess ()
+%!error hess ()
 %!error hess ([1, 2; 3, 4], 2)
 %!error <must be a square matrix> hess ([1, 2; 3, 4; 5, 6])
 */
--- a/libinterp/corefcn/hex2num.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/hex2num.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -370,7 +370,8 @@
 %!assert (hex2num (num2hex (pi)), pi)
 %!assert (hex2num (num2hex (single (pi)), "single"), single (pi))
 
-%!error <Invalid call> num2hex ()
+%!error num2hex ()
+%!error num2hex (1,2)
 %!error num2hex (1,"foo")
 %!error num2hex (1,2,3)
 %!error num2hex (1j)
--- a/libinterp/corefcn/input.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/input.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -1154,7 +1154,8 @@
 %!assert (any (strcmp ("abs", deblank (cellstr (completion_matches ("abs"))))))
 %!assert (! any (strcmp ("abs", deblank (cellstr (completion_matches ("absa"))))))
 
-%!error <Invalid call> completion_matches ()
+%!error completion_matches ()
+%!error completion_matches (1, 2)
 */
 
 DEFUN (readline_read_init_file, args, ,
--- a/libinterp/corefcn/inv.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/inv.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -258,7 +258,7 @@
 %! fail ("A = inv (sparse ([1, 0, 0; 0, 0, 0; 0, 0, 1]))", "warning", "matrix singular");
 %! assert (A, sparse ([Inf, 0, 0; 0, 0, 0; 0, 0, Inf]));
 
-%!error <Invalid call> inv ()
+%!error inv ()
 %!error inv ([1, 2; 3, 4], 2)
 %!error <must be a square matrix> inv ([1, 2; 3, 4; 5, 6])
 %!error <inverse of the null matrix not defined> inv (sparse (2, 2, 0))
--- a/libinterp/corefcn/lu.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/lu.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -552,7 +552,7 @@
 %! [L, U, P, Q] = lu (B);
 %! assert (P'*L*U*Q', B);
 
-%!error <Invalid call> lu ()
+%!error lu ()
 %!testif HAVE_UMFPACK
 %! fail ("[l,u] = lu (sparse (magic (3)))", "warning", "function may fail");
 %!error <can not define pivoting threshold> lu ([1, 2; 3, 4], 2)
--- a/libinterp/corefcn/mappers.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/mappers.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -80,7 +80,8 @@
 %!assert (abs (single (3-4i)), single (5))
 %!assert (abs (single ([1.1, 3i; 3+4i, -3-4i])), single ([1.1, 3; 5, 5]))
 
-%!error <Invalid call> abs ()
+%!error abs ()
+%!error abs (1, 2)
 */
 
 DEFUN (acos, args, ,
@@ -140,7 +141,8 @@
 %! v = [0, pi, pi/2, pi/2];
 %! assert (real (acos (x)), v);
 
-%!error <Invalid call> acos ()
+%!error acos ()
+%!error acos (1, 2)
 */
 
 DEFUN (acosh, args, ,
@@ -214,7 +216,8 @@
 %! v = [0, pi, pi/2, -pi/2];
 %! assert (imag (acosh (x)), v);
 
-%!error <Invalid call> acosh ()
+%!error acosh ()
+%!error acosh (1, 2)
 */
 
 DEFUN (angle, args, ,
@@ -281,7 +284,8 @@
 %!assert (arg (single (-i)), single (-pi/2))
 %!assert (arg (single ([1, i; -1, -i])), single ([0, pi/2; pi, -pi/2]), 2e1*eps ("single"))
 
-%!error <Invalid call> arg ()
+%!error arg ()
+%!error arg (1, 2)
 */
 
 DEFUN (asin, args, ,
@@ -340,7 +344,8 @@
 %! v = [pi/2, -pi/2, 0, -0];
 %! assert (real (asin (x)), v);
 
-%!error <Invalid call> asin ()
+%!error asin ()
+%!error asin (1, 2)
 */
 
 DEFUN (asinh, args, ,
@@ -382,7 +387,8 @@
 %! v = [0, 0, pi/2, -pi/2];
 %! assert (imag (asinh (x)), v);
 
-%!error <Invalid call> asinh ()
+%!error asinh ()
+%!error asinh (1, 2)
 */
 
 DEFUN (atan, args, ,
@@ -420,7 +426,8 @@
 %! assert (real (atan (x)), v);
 %! assert (imag (atan (x)), [0, 0, 0, 0], eps);
 
-%!error <Invalid call> atan ()
+%!error atan ()
+%!error atan (1, 2)
 */
 
 DEFUN (atanh, args, ,
@@ -454,7 +461,8 @@
 %! assert (imag (atanh (x)), v);
 %! assert (real (atanh (x)), [0, 0, 0, 0], eps);
 
-%!error <Invalid call> atanh ()
+%!error atanh ()
+%!error atanh (1, 2)
 */
 
 DEFUN (cbrt, args, ,
@@ -483,7 +491,8 @@
 %!assert (cbrt (2^300), 2^100)
 %!assert (cbrt (125*2^300), 5*2^100)
 
-%!error <Invalid call> cbrt ()
+%!error cbrt ()
+%!error cbrt (1, 2)
 */
 
 DEFUN (ceil, args, ,
@@ -524,7 +533,8 @@
 ## complex single precision
 %!assert (ceil (single ([2+2i, 1.1+1.1i, -1.1-1.1i, -1-i])), single ([2+2i, 2+2i, -1-i, -1-i]))
 
-%!error <Invalid call> ceil ()
+%!error ceil ()
+%!error ceil (1, 2)
 */
 
 DEFUN (conj, args, ,
@@ -561,7 +571,8 @@
 %!assert (conj (single (1-i)), single (1+i))
 %!assert (conj (single ([-1, -i; -1+i, -1-i])), single ([-1, i; -1-i, -1+i]))
 
-%!error <Invalid call> conj ()
+%!error conj ()
+%!error conj (1, 2)
 */
 
 DEFUN (cos, args, ,
@@ -594,7 +605,8 @@
 %! v = single ([1, rt3/2, rt2/2, 1/2, 0, -1/2, -rt2/2, -rt3/2, -1]);
 %! assert (cos (x), v, sqrt (eps ("single")));
 
-%!error <Invalid call> cos ()
+%!error cos ()
+%!error cos (1, 2)
 */
 
 DEFUN (cosh, args, ,
@@ -621,7 +633,8 @@
 %! v = single ([1, 0, -1, 0]);
 %! assert (cosh (x), v, sqrt (eps ("single")));
 
-%!error <Invalid call> cosh ()
+%!error cosh ()
+%!error cosh (1, 2)
 */
 
 DEFUN (erf, args, ,
@@ -689,7 +702,8 @@
 %! assert (erf (-x), -v, -1.e-10);
 %! assert (erfc (x), 1-v, -1.e-10);
 
-%!error <Invalid call> erf ()
+%!error erf ()
+%!error erf (1, 2)
 */
 
 DEFUN (erfinv, args, ,
@@ -725,7 +739,8 @@
 %!assert (erfinv ([-1, 1, 1.1, -2.1]), [-Inf, Inf, NaN, NaN])
 %!error erfinv (1+2i)
 
-%!error <Invalid call> erfinv ()
+%!error erfinv ()
+%!error erfinv (1, 2)
 */
 
 DEFUN (erfcinv, args, ,
@@ -761,7 +776,8 @@
 %!assert (erfcinv ([2, 0, -0.1, 2.1]), [-Inf, Inf, NaN, NaN])
 %!error erfcinv (1+2i)
 
-%!error <Invalid call> erfcinv ()
+%!error erfcinv ()
+%!error erfcinv (1, 2)
 */
 
 DEFUN (erfc, args, ,
@@ -790,7 +806,8 @@
 %! a = -1i*sqrt (-1/(6.4187*6.4187));
 %! assert (erfc (a), erfc (real (a)));
 
-%!error <Invalid call> erfc ()
+%!error erfc ()
+%!error erfc (1, 2)
 */
 
 DEFUN (erfcx, args, ,
@@ -831,7 +848,8 @@
 %! v = [0.0056416137829894329, 0.0054246791754558-0.00108483153786434i];
 %! assert (erfcx (x), v, -1.e-10);
 
-%!error <Invalid call> erfcx ()
+%!error erfcx ()
+%!error erfcx (1, 2)
 */
 
 DEFUN (erfi, args, ,
@@ -867,7 +885,8 @@
 %! x = [-0.1, 0.1, 1, 1+2i,-1+2i,1e-6+2e-6i,0+2i];
 %! assert (erfi (x), -i * erf(i*x), -1.e-10);
 
-%!error <Invalid call> erfi ()
+%!error erfi ()
+%!error erfi (1, 2)
 */
 
 DEFUN (dawson, args, ,
@@ -905,7 +924,8 @@
 %! assert (dawson (x), v, -1.e-10);
 %! assert (dawson (-x), -v, -1.e-10);
 
-%!error <Invalid call> dawson ()
+%!error dawson ()
+%!error dawson (1, 2)
 */
 
 DEFUN (exp, args, ,
@@ -939,7 +959,8 @@
 %!assert (exp ([Inf, -Inf, NaN]), [Inf 0 NaN])
 %!assert (exp (single ([Inf, -Inf, NaN])), single ([Inf 0 NaN]))
 
-%!error <Invalid call> exp ()
+%!error exp ()
+%!error exp (1, 2)
 */
 
 DEFUN (expm1, args, ,
@@ -968,7 +989,8 @@
 %!assert (expm1 ([Inf, -Inf, NaN]), [Inf -1 NaN])
 %!assert (expm1 (single ([Inf, -Inf, NaN])), single ([Inf -1 NaN]))
 
-%!error <Invalid call> expm1 ()
+%!error expm1 ()
+%!error expm1 (1, 2)
 */
 
 DEFUN (isfinite, args, ,
@@ -1003,7 +1025,8 @@
 %!assert (! isfinite (single (NaN)))
 %!assert (isfinite (single (rand (1,10))))
 
-%!error <Invalid call> isfinite ()
+%!error isfinite ()
+%!error isfinite (1, 2)
 */
 
 DEFUN (fix, args, ,
@@ -1035,7 +1058,8 @@
 %!assert (fix (single ([1.1, 1, -1.1, -1])), single ([1, 1, -1, -1]))
 %!assert (fix (single ([1.1+1.1i, 1+i, -1.1-1.1i, -1-i])), single ([1+i, 1+i, -1-i, -1-i]))
 
-%!error <Invalid call> fix ()
+%!error fix ()
+%!error fix (1, 2)
 */
 
 DEFUN (floor, args, ,
@@ -1067,7 +1091,8 @@
 %!assert (floor (single ([2, 1.1, -1.1, -1])), single ([2, 1, -2, -1]))
 %!assert (floor (single ([2+2i, 1.1+1.1i, -1.1-1.1i, -1-i])), single ([2+2i, 1+i, -2-2i, -1-i]))
 
-%!error <Invalid call> floor ()
+%!error floor ()
+%!error floor (1, 2)
 */
 
 DEFUN (gamma, args, ,
@@ -1135,7 +1160,8 @@
 %! assert (gamma (x), v);
 %! assert (gamma (single (x)), single (v));
 
-%!error <Invalid call> gamma ()
+%!error gamma ()
+%!error gamma (1, 2)
 */
 
 DEFUN (imag, args, ,
@@ -1162,7 +1188,8 @@
 %!assert (imag (single (1+i)), single (1))
 %!assert (imag (single ([i, 1; 1, i])), full (eye (2,"single")))
 
-%!error <Invalid call> imag ()
+%!error imag ()
+%!error imag (1, 2)
 */
 
 DEFUNX ("isalnum", Fisalnum, args, ,
@@ -1336,7 +1363,8 @@
 %!assert (isinf (single (rand (1,10))), false (1,10))
 %!assert (isinf (single ([NaN -Inf -1 0 1 Inf NA])), [false, true, false, false, false, true, false])
 
-%!error <Invalid call> isinf ()
+%!error isinf ()
+%!error isinf (1, 2)
 */
 
 DEFUNX ("isgraph", Fisgraph, args, ,
@@ -1428,7 +1456,8 @@
 %!assert (isna (single (rand (1,10))), false (1,10))
 %!assert (isna (single ([NaN -Inf -1 0 1 Inf NA])), [false, false, false, false, false, false, true])
 
-%!error <Invalid call> isna ()
+%!error isna ()
+%!error isna (1, 2)
 */
 
 DEFUN (isnan, args, ,
@@ -1467,7 +1496,8 @@
 %!assert (isnan (single (rand (1,10))), false (1,10))
 %!assert (isnan (single ([NaN -Inf -1 0 1 Inf NA])), [true, false, false, false, false, false, true])
 
-%!error <Invalid call> isnan ()
+%!error isnan ()
+%!error isnan (1, 2)
 */
 
 DEFUNX ("isprint", Fisprint, args, ,
@@ -1679,7 +1709,8 @@
 %!assert (log (single ([1, e, e^2])), single ([0, 1, 2]), sqrt (eps ("single")))
 %!assert (log (single ([-0.5, -1.5, -2.5])), single (log ([0.5, 1.5, 2.5]) + pi*1i), 4*eps ("single"))
 
-%!error <Invalid call> log ()
+%!error log ()
+%!error log (1, 2)
 */
 
 DEFUN (log10, args, ,
@@ -1699,7 +1730,8 @@
 %!assert (log10 ([0.01, 0.1, 1, 10, 100]), [-2, -1, 0, 1, 2], sqrt (eps))
 %!assert (log10 (single ([0.01, 0.1, 1, 10, 100])), single ([-2, -1, 0, 1, 2]), sqrt (eps ("single")))
 
-%!error <Invalid call> log10 ()
+%!error log10 ()
+%!error log10 (1, 2)
 */
 
 DEFUN (log1p, args, ,
@@ -1726,7 +1758,8 @@
 %!assert (log1p ([0, 2*eps, -2*eps]), [0, 2*eps, -2*eps], 1e-29)
 %!assert (log1p (single ([0, 2*eps, -2*eps])), single ([0, 2*eps, -2*eps]), 1e-29)
 
-%!error <Invalid call> log1p ()
+%!error log1p ()
+%!error log1p (1, 2)
 */
 
 DEFUN (real, args, ,
@@ -1753,7 +1786,8 @@
 %!assert (real (single (1+i)), single (1))
 %!assert (real (single ([1, i; i, 1])), full (eye (2, "single")))
 
-%!error <Invalid call> real ()
+%!error real ()
+%!error real (1, 2)
 */
 
 DEFUN (round, args, ,
@@ -1797,7 +1831,8 @@
 %!assert (round (single (-2.6)), single (-3))
 %!assert (round (single ([1.1, -2.4; -3.7, 7.1])), single ([1, -2; -4, 7]))
 
-%!error <Invalid call> round ()
+%!error round ()
+%!error round (1, 2)
 */
 
 DEFUN (roundb, args, ,
@@ -1836,7 +1871,8 @@
 %!assert (roundb (single (-2.6)), single (-3))
 %!assert (roundb (single ([1.1, -2.4; -3.7, 7.1])), single ([1, -2; -4, 7]))
 
-%!error <Invalid call> roundb ()
+%!error roundb ()
+%!error roundb (1, 2)
 */
 
 DEFUN (sign, args, ,
@@ -1887,7 +1923,8 @@
 %!assert (sign (single (3)), single (1))
 %!assert (sign (single ([1, -pi; e, 0])), single ([1, -1; 1, 0]))
 
-%!error <Invalid call> sign ()
+%!error sign ()
+%!error sign (1, 2)
 */
 
 DEFUNX ("signbit", Fsignbit, args, ,
@@ -1957,7 +1994,8 @@
 %! v = single ([0, 1/2, rt2/2, rt3/2, 1, rt3/2, rt2/2, 1/2, 0]);
 %! assert (sin (x), v, sqrt (eps ("single")));
 
-%!error <Invalid call> sin ()
+%!error sin ()
+%!error sin (1, 2)
 */
 
 DEFUN (sinh, args, ,
@@ -1984,7 +2022,8 @@
 %! v = single ([0, i, 0, -i]);
 %! assert (sinh (x), v, sqrt (eps ("single")));
 
-%!error <Invalid call> sinh ()
+%!error sinh ()
+%!error sinh (1, 2)
 */
 
 DEFUN (sqrt, args, ,
@@ -2015,7 +2054,8 @@
 %!assert (sqrt (single (1+i)), single (exp (0.5 * log (1+i))), sqrt (eps ("single")))
 %!assert (sqrt (single ([4, -4; i, 1-i])), single ([2, 2i; exp(0.5 * log (i)), exp(0.5 * log (1-i))]), sqrt (eps ("single")))
 
-%!error <Invalid call> sqrt ()
+%!error sqrt ()
+%!error sqrt (1, 2)
 */
 
 DEFUN (tan, args, ,
@@ -2046,7 +2086,8 @@
 %! v = single ([0, rt3/3, 1, rt3, -rt3, -1, -rt3/3, 0]);
 %! assert (tan (x), v,  sqrt (eps ("single")));
 
-%!error <Invalid call> tan ()
+%!error tan ()
+%!error tan (1, 2)
 */
 
 DEFUN (tanh, args, ,
@@ -2073,7 +2114,8 @@
 %! v = single ([0, 0]);
 %! assert (tanh (x), v, sqrt (eps ("single")));
 
-%!error <Invalid call> tanh ()
+%!error tanh ()
+%!error tanh (1, 2)
 */
 
 DEFUNX ("tolower", Ftolower, args, ,
--- a/libinterp/corefcn/max.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/max.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -649,7 +649,8 @@
 %! assert (min (2, x), sparse ([1 2 2 2]));
 %! assert (min (x, 2.1i), sparse ([1 2 2.1i 2.1i]));
 
-%!error <Invalid call> min ()
+%!error min ()
+%!error min (1, 2, 3, 4)
 %!error <DIM must be a valid dimension> min ([1 2; 3 4], [], -3)
 %!warning <second argument is ignored> min ([1 2 3 4], 2, 2);
 %!error <wrong type argument 'cell'> min ({1 2 3 4})
@@ -873,7 +874,8 @@
 %!assert <*40743> (max (sparse (zeros (1,0)), sparse (ones (1,1))),
 %!                sparse (zeros (1,0)))
 
-%!error <Invalid call> max ()
+%!error max ()
+%!error max (1, 2, 3, 4)
 %!error <DIM must be a valid dimension> max ([1 2; 3 4], [], -3)
 %!warning <second argument is ignored> max ([1 2 3 4], 2, 2);
 %!error <wrong type argument 'cell'> max ({1 2 3 4})
@@ -1037,7 +1039,8 @@
 %! assert (ndims (iw), 3);
 %! assert (iw, ones (2,2,2));
 
-%!error <Invalid call> cummin ()
+%!error cummin ()
+%!error cummin (1, 2, 3)
 */
 
 DEFUN (cummax, args, nargout,
@@ -1091,5 +1094,6 @@
 %! assert (ndims (iw), 3);
 %! assert (iw, ones (2,2,2));
 
-%!error <Invalid call> cummax ()
+%!error cummax ()
+%!error cummax (1, 2, 3)
 */
--- a/libinterp/corefcn/pr-output.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/pr-output.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -3551,7 +3551,8 @@
 %! end_unwind_protect
 
 ## Test input validation
-%!error <Invalid call> display ()
+%!error display ()
+%!error display (1,2)
 */
 
 static inline void
--- a/libinterp/corefcn/psi.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/psi.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -222,7 +222,8 @@
 %! endfor
 
 ## Test input validation
-%!error <Invalid call> psi ()
+%!error psi ()
+%!error psi (1, 2, 3)
 %!error <Z must be> psi ("non numeric")
 %!error <K must be an integer> psi ({5.3}, 1)
 %!error <K must be non-negative> psi (-5, 1)
--- a/libinterp/corefcn/qr.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/qr.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -643,7 +643,7 @@
 %! assert (qr (zeros (1, 0)), zeros (1, 0))
 %! assert (qr (zeros (0, 1)), zeros (0, 1))
 
-%!error <Invalid call> qr ()
+%!error qr ()
 %!error qr ([1, 2; 3, 4], 0, 2)
 
 %!function retval = __testqr (q, r, a, p)
@@ -796,7 +796,7 @@
 %! assert (r, re, sqrt (eps ("single")));
 %! assert (q'*b, c, sqrt (eps ("single")));
 
-%!error <Invalid call> qr ()
+%!error qr ()
 %!error qr ([1, 2; 3, 4], 0, 2)
 
 %!test
--- a/libinterp/corefcn/schur.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/schur.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -259,7 +259,8 @@
 %! [u, s] = schur (a);
 %! assert (u' * a * u, s, sqrt (eps ("single")));
 
-%!error <Invalid call> schur ()
+%!error schur ()
+%!error schur (1,2,3)
 %!error [a,b,c] = schur (1)
 %!error <must be a square matrix> schur ([1, 2, 3; 4, 5, 6])
 %!error <wrong type argument 'cell'> schur ({1})
--- a/libinterp/corefcn/sparse.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/sparse.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -72,7 +72,8 @@
 %!assert (issparse (cell (1)), false)
 
 ## Test input validation
-%!error <Invalid call> issparse ()
+%!error issparse ()
+%!error issparse (1,2)
 */
 
 DEFUN (sparse, args, ,
@@ -315,8 +316,9 @@
 %!assert (spalloc (2,1), sparse (2,1))
 %!assert (spalloc (2,1,2), sparse (2,1))
 
-%!error <Invalid call> spalloc ()
-%!error <Invalid call> spalloc (1)
+%!error spalloc ()
+%!error spalloc (1)
+%!error spalloc (1,2,3,4)
 %!error <M, N, and NZ must be non-negative> spalloc (-1, 1, 1)
 %!error <M, N, and NZ must be non-negative> spalloc (1, -1, 1)
 %!error <M, N, and NZ must be non-negative> spalloc (1, 1, -1)
--- a/libinterp/corefcn/strfind.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/strfind.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -304,9 +304,8 @@
 %!assert (strfind ("abc", {"", "b", ""}), {[], 2, []})
 %!assert (strfind ({"abc", "def"}, ""), {[], []})
 
-%!error <Invalid call> strfind ()
-%!error <Invalid call> strfind ("str1")
-%!error <Invalid call> strfind ("foo", "bar", 1)
+%!error strfind ()
+%!error strfind ("foo", "bar", 1)
 %!error <unknown option: foobar> strfind ("foo", 100, "foobar", 1)
 %!error <each element of CELLSTR must be a string> strfind ({"A", 1}, "foo")
 %!error <first argument must be a string> strfind (100, "foo")
@@ -504,7 +503,7 @@
 
 %!assert (size (strrep ("a", "a", "")), [0 0])
 
-%!error <Invalid call> strrep ()
+%!error strrep ()
 %!error strrep ("A")
 %!error strrep ("A", "B")
 %!error strrep ("A", "B", "C", "D")
--- a/libinterp/corefcn/strfns.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/strfns.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -312,7 +312,7 @@
 %!assert (ischar (["test"; "ing"]), true)
 %!assert (ischar (struct ("foo", "bar")), false)
 
-%!error <Invalid call> ischar ()
+%!error ischar ()
 %!error ischar ("test", 1)
 */
 
@@ -607,7 +607,7 @@
 %!assert (strcmp ("foobar", "fooBar"), false)
 %!assert (strcmp ("fooba", "foobar"), false)
 
-%!error <Invalid call> strcmp ()
+%!error strcmp ()
 %!error strcmp ("foo", "bar", 3)
 */
 
@@ -668,7 +668,7 @@
 
 %!assert <*54373> (strncmp ("abc", "abc", 100))
 
-%!error <Invalid call> strncmp ()
+%!error strncmp ()
 %!error strncmp ("abc", "def")
 */
 
@@ -1189,7 +1189,7 @@
 %! result = "  abc     mnop  \n  def     qrs   \n  ghijkl  tuv   \n";
 %! assert (list_in_columns (input, 20, "  "), result);
 
-%!error <Invalid call> list_in_columns ()
+%!error list_in_columns ()
 %!error list_in_columns (["abc", "def"], 20, 2)
 %!error list_in_columns (["abc", "def"], 20, "  ", 3)
 %!error <list_in_columns: WIDTH must be an integer> list_in_columns (["abc", "def"], "a")
--- a/libinterp/corefcn/svd.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/svd.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -377,7 +377,7 @@
 
 %!assert <*55710> (1 / svd (-0), Inf)
 
-%!error <Invalid call> svd ()
+%!error svd ()
 %!error svd ([1, 2; 4, 5], 2, 3)
 */
 
--- a/libinterp/corefcn/sylvester.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/sylvester.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -160,9 +160,10 @@
 %!assert (sylvester (single ([1, 2; 3, 4]), single ([5, 6; 7, 8]), single ([9, 10; 11, 12])), single ([1/2, 2/3; 2/3, 1/2]), sqrt (eps ("single")))
 
 ## Test input validation
-%!error <Invalid call> sylvester ()
-%!error <Invalid call> sylvester (1)
-%!error <Invalid call> sylvester (1,2)
+%!error sylvester ()
+%!error sylvester (1)
+%!error sylvester (1,2)
+%!error sylvester (1, 2, 3, 4)
 %!error <A must be a square matrix> sylvester (ones (2,3), ones (2,2), ones (2,2))
 %!error <B must be a square matrix> sylvester (ones (2,2), ones (2,3), ones (2,2))
 %!error <nonconformant matrices> sylvester (ones (2,2), ones (2,2), ones (3,3))
--- a/libinterp/corefcn/time.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/time.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -182,7 +182,8 @@
 %! assert (isfield (ts, "isdst"));
 %! assert (isfield (ts, "yday"));
 
-%!error <Invalid call> gmtime ()
+%!error gmtime ()
+%!error gmtime (1, 2)
 */
 
 DEFUN (localtime, args, ,
@@ -236,7 +237,8 @@
 %! assert (isfield (ts, "isdst"));
 %! assert (isfield (ts, "yday"));
 
-%!error <Invalid call> localtime ()
+%!error localtime ()
+%!error localtime (1, 2)
 */
 
 DEFUN (mktime, args, ,
@@ -277,8 +279,9 @@
 %!assert (datestr (datenum (1901, 1, 1), 0), "01-Jan-1901 00:00:00")
 %!assert (datestr (datenum (1795, 1, 1), 0), "01-Jan-1795 00:00:00")
 
-%!error <Invalid call> mktime ()
-%!error <TM_STRUCT argument must be a structure> mktime (1)
+%!error mktime ()
+%!error mktime (1)
+%!error mktime (1, 2, 3)
 %!error mktime (struct ("year", "foo"))
 */
 
@@ -459,7 +462,7 @@
 %!assert (ischar (strftime ("%c%C%d%e%D%h%j", localtime (time ()))))
 %!assert (ischar (strftime ("%m%U%w%W%x%y%Y", localtime (time ()))))
 
-%!error <Invalid call> strftime ()
+%!error strftime ()
 %!error strftime ("foo", 1)
 %!error strftime ("foo", struct ("year", "foo"))
 %!error strftime ("foo", localtime (time ()), 1)
@@ -506,5 +509,5 @@
 %! assert (isfield (ts, "isdst"));
 %! assert (isfield (ts, "yday"));
 
-%!error <Invalid call> strptime ()
+%!error strptime ()
 */
--- a/libinterp/corefcn/toplev.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/toplev.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -317,7 +317,8 @@
 %! assert (ischar (output));
 %! assert (! isempty (output));
 
-%!error <Invalid call> system ()
+%!error system ()
+%!error system (1, 2, 3)
 */
 
 static octave_value
--- a/libinterp/corefcn/tril.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/tril.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -476,5 +476,5 @@
 %!assert (triu (a, -4), um3);
 
 %!error tril ()
-%!error <Invalid call> triu ()
+%!error triu ()
 */
--- a/libinterp/corefcn/tsearch.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/tsearch.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -173,5 +173,5 @@
 %!assert (tsearch (x,y,tri,-1/3, -1/3), 1)
 %!assert (tsearch (x,y,tri, 1, 1), NaN)
 
-%!error <Invalid call> tsearch ()
+%!error tsearch ()
 */
--- a/libinterp/corefcn/typecast.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/typecast.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -301,8 +301,9 @@
 %!assert (typecast (-inf, "double"), -inf)
 %!assert (typecast (nan,  "double"), nan)
 
-%!error <Invalid call> typecast ()
-%!error <Invalid call> typecast (1)
+%!error typecast ()
+%!error typecast (1)
+%!error typecast (1, 2, 3)
 %!error typecast (1, "invalid")
 %!error typecast (int8 (0), "double")
 */
@@ -450,8 +451,9 @@
 %! x([1, 9]) = true;
 %! assert (bitpack (x, "uint32"), uint32 (257));
 
-%!error <Invalid call> bitpack ()
-%!error <Invalid call> bitpack (1)
+%!error bitpack ()
+%!error bitpack (1)
+%!error bitpack (1, 2, 3)
 %!error bitpack (1, "invalid")
 %!error bitpack (1, "double")
 %!error bitpack (false, "invalid")
@@ -583,6 +585,7 @@
 %!assert (bitunpack (complex (single (0))), zeros (1, 64, "logical"))
 %!assert (bitunpack (complex (double (0))), zeros (1, 128, "logical"))
 
-%!error <Invalid call> bitunpack ()
+%!error bitunpack ()
+%!error bitunpack (1, 2)
 %!error bitunpack ({})
 */
--- a/libinterp/corefcn/utils.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/utils.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -127,7 +127,7 @@
 %!assert (isvarname (12), false)
 %!assert (isvarname ("foo+bar"), false)
 
-%!error <Invalid call> isvarname ()
+%!error isvarname ()
 %!error isvarname ("foo", "bar")
 */
 
@@ -241,7 +241,7 @@
 %!assert (is_same_file ({pwd(), ".", tempdir()}, canonicalize_file_name (".")),
 %!        [true, true, false])
 
-%!error <Invalid call> is_same_file ()
+%!error is_same_file ()
 %!error is_same_file ("foo")
 %!error is_same_file ("foo", "bar", "baz")
 %!error <must be strings or cell arrays of strings> is_same_file ("foo", 1)
@@ -457,7 +457,7 @@
 %! lst = file_in_loadpath ("$$probably_!! _not_&&_a_!! _file$$", "all");
 %! assert (lst, {});
 
-%!error <Invalid call> file_in_loadpath ()
+%!error file_in_loadpath ()
 %!error file_in_loadpath ("foo", "bar", 1)
 %!error file_in_loadpath ([])
 %!error file_in_loadpath ("plot.m", "bar")
@@ -528,7 +528,7 @@
 %! lst = file_in_path (path (), "$$probably_!! _not_&&_a_!! _file$$", "all");
 %! assert (lst, {});
 
-%!error <Invalid call> file_in_path ()
+%!error file_in_path ()
 %!error file_in_path ("foo")
 %!error file_in_path ("foo", "bar", "baz", 1)
 %!error file_in_path ([])
@@ -826,7 +826,7 @@
 %!assert (do_string_escapes ('A\x4AG'), ["A" char(74) "G"])
 %!assert (sprintf ('\x4f\x63\x74\x61\x76\x65'), "Octave")
 
-%!error <Invalid call> do_string_escapes ()
+%!error do_string_escapes ()
 %!error do_string_escapes ("foo", "bar")
 %!error <STRING argument> do_string_escapes (3)
 %!warning <malformed hex escape sequence> do_string_escapes ('\xG');
@@ -949,7 +949,7 @@
 %!assert (undo_string_escapes ("\"double-quoted\""), '\"double-quoted\"')
 %!assert (undo_string_escapes ("\"double-quoted\""), "\\\"double-quoted\\\"")
 
-%!error <Invalid call> undo_string_escapes ()
+%!error undo_string_escapes ()
 %!error undo_string_escapes ("foo", "bar")
 %!error undo_string_escapes (3)
 */
@@ -971,7 +971,7 @@
 /*
 ## FIXME: We need system-dependent tests here.
 
-%!error <Invalid call> is_absolute_filename ()
+%!error is_absolute_filename ()
 %!error is_absolute_filename ("foo", "bar")
 */
 
@@ -992,7 +992,7 @@
 /*
 ## FIXME: We need system-dependent tests here.
 
-%!error <Invalid call> is_rooted_relative_filename ()
+%!error is_rooted_relative_filename ()
 %!error is_rooted_relative_filename ("foo", "bar")
 */
 
@@ -1018,7 +1018,7 @@
 /*
 ## FIXME: We need system-dependent tests here.
 
-%!error <Invalid call> make_absolute_filename ()
+%!error make_absolute_filename ()
 %!error make_absolute_filename ("foo", "bar")
 */
 
@@ -1076,7 +1076,7 @@
 %! lst = dir_in_loadpath ("$$probably_!! _not_&&_a_!! _dir$$", "all");
 %! assert (lst, {});
 
-%!error <Invalid call> dir_in_loadpath ()
+%!error dir_in_loadpath ()
 %!error dir_in_loadpath ("foo", "bar", 1)
 */
 
@@ -1539,7 +1539,7 @@
 %!assert (isindex (1:3, 2), false)
 %!assert (isindex ([1, 2, -3]), false)
 
-%!error <Invalid call> isindex ()
+%!error isindex ()
 %!error isindex (1:3, 2, 3)
 */
 
--- a/libinterp/corefcn/variables.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/corefcn/variables.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -191,7 +191,7 @@
 %! assert (isglobal ("x"), true);
 %! clear -global x;  # cleanup after test
 
-%!error <Invalid call> isglobal ()
+%!error isglobal ()
 %!error isglobal ("a", "b")
 %!error isglobal (1)
 */
@@ -505,7 +505,8 @@
 %!assert (exist (dirtmp, "dir"), 7)
 %!assert (exist (dirtmp, "file"), 7)
 
-%!error <Invalid call> exist ()
+%!error exist ()
+%!error exist (1,2,3)
 %!warning <"class" type argument is not implemented> exist ("a", "class");
 %!error <TYPE must be a string> exist ("a", 1)
 %!error <NAME must be a string> exist (1)
--- a/libinterp/dldfcn/gzip.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/dldfcn/gzip.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -632,7 +632,7 @@
 }
 
 /*
-%!error <Invalid call> gzip ()
+%!error gzip ()
 %!error gzip ("1", "2", "3")
 %!error <FILES must be a character array or cellstr|was unavailable or disabled> gzip (1)
 */
--- a/libinterp/octave-value/ov-class.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/octave-value/ov-class.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -1783,7 +1783,7 @@
 %! assert (class (jobj), "java.lang.StringBuffer");
 
 ## Test Input Validation
-%!error <Invalid call> class ()
+%!error class ()
 */
 
 DEFUN (isa, args, ,
--- a/libinterp/octave-value/ov-fcn-handle.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/octave-value/ov-fcn-handle.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -3255,7 +3255,8 @@
 %!assert (! is_function_handle ({fh}))
 %!assert (! is_function_handle (1))
 
-%!error <Invalid call> is_function_handle ()
+%!error is_function_handle ()
+%!error is_function_handle (1, 2)
 */
 
 /*
--- a/libinterp/octave-value/ov.cc	Fri Oct 09 13:49:52 2020 -0700
+++ b/libinterp/octave-value/ov.cc	Sat Oct 10 07:28:34 2020 -0700
@@ -3523,7 +3523,7 @@
 %!assert (is_sq_string (1.0), false)
 %!assert (is_sq_string ({2.0}), false)
 
-%!error <Invalid call> is_sq_string ()
+%!error is_sq_string ()
 %!error is_sq_string ('foo', 2)
 */
 
@@ -3546,7 +3546,7 @@
 %!assert (is_dq_string (1.0), false)
 %!assert (is_dq_string ({2.0}), false)
 
-%!error <Invalid call> is_dq_string ()
+%!error is_dq_string ()
 %!error is_dq_string ("foo", 2)
 */