According to the specification section 9.1.8:
THROW() or THROW(INT|STR: a1, ..., INT|STR: aN) = MUST raise a runtime error. When one or more arguments are supplied, the error message MUST be formed by concatenating those arguments using the same rendering rules as PRINT, but without a trailing newline.
In the implementation, however, THROW only inspects args[0], and only if it is a STR. If args[0] is a string, it is thrown; otherwise the fixed message "Exception thrown" is used. All other arguments, including non-string types and subsequent strings, are silently ignored and not concatenated.
According to the specification section 9.1.8:
In the implementation, however,
THROWonly inspectsargs[0], and only if it is aSTR. Ifargs[0]is a string, it is thrown; otherwise the fixed message"Exception thrown"is used. All other arguments, including non-string types and subsequent strings, are silently ignored and not concatenated.