reports a run time error
error(message) error(message, n) error(n, message)
Vector of strings. The error message to be displayed.
Each component is displayed on a separate line.
Providing an error message translated with gettext(…)
is a good practice.
integer > 0: numerical identifier ascribed to the error. Default = 10000.
While the message is often translated into the current session language,
n
allows to test the error in a language-independent way.
error(…)
allows to issue an error. By default error
message
,In order to handle the error without stopping the execution, it is possible to catch
it by using try … catch
or execstr(…,'errcatch')
,
and to test it with lasterror(…)
.
error(message)
yields an error #10000 (and displays the given
message
).
error(message, n)
displays the character string contained in
message
. The numerical identifier ascribed to the error is
n
.
See error_table for a list of standard error messages. Most of them are already translated in the 4 main supported languages.
function test(a) if argn(2)~=1 msg = gettext("%s: Wrong number of input arguments: %d expected.\n") error(msprintf(msg, "test", 1)) end endfunction function myfun() a = 1; test() endfunction // ---------- error(['A multi line' 'error message']) error(500, 'Error: my error message') [m, n] = lasterror() test() myfun() | ![]() | ![]() |
--> error(['A multi line' 'error message']) A multi line error message --> error(500, 'Error: my error message') Error: my error message --> [m, n] = lasterror() n = 500. m = Error: my error message --> test() at line 4 of function test test: Wrong number of input arguments: 1 expected. --> myfun() at line 4 of function test at line 3 of function myfun test: Wrong number of input arguments: 1 expected.
Version | Description |
5.0.0 | error(n, message) syntax introduced. |
5.4.0 | The error function can take vector of strings as input argument. |
6.0.0 | The error(n) and error(n, pos) syntaxes
are no longer supported: Providing an explicit error message is now mandatory.
There is no longer any absolute error identifier. |