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. |