.. efun:: void throw(mixed message) Abort execution. If the current program execution was initiated by :efun:`catch`, that catch expression will return :arg:`message` as error code. Calling ``throw()`` without an enclosing ``catch()`` does not make sense and will result in a "Throw with no catch." error. .. todo:: since this type is mixed, the usage example should probably demonstrate how this will work with non-string args? .. usage:: This will just print the string "aborting execution":: catch(throw("aborting execution")); .. seealso:: :efun:`catch`, :efun:`raise_error`