[][src]Function dart_sys::Dart_PropagateError

pub unsafe extern "C" fn Dart_PropagateError(handle: Dart_Handle)

Propagates an error.

If the provided handle is an unhandled exception error, this function will cause the unhandled exception to be rethrown. This will proceed in the standard way, walking up Dart frames until an appropriate 'catch' block is found, executing 'finally' blocks, etc.

If the error is not an unhandled exception error, we will unwind the stack to the next C frame. Intervening Dart frames will be discarded; specifically, 'finally' blocks will not execute. This is the standard way that compilation errors (and the like) are handled by the Dart runtime.

In either case, when an error is propagated any current scopes created by Dart_EnterScope will be exited.

See the additional discussion under "Propagating Errors" at the beginning of this file.

\param An error handle (See Dart_IsError)

\return On success, this function does not return. On failure, the process is terminated.