# Index of exceptions

A
Assert_failure [Stdlib] | Exception raised when an assertion fails.
B
Bad [Arg] | Functions in `spec` or `anon_fun` can raise `Arg.Bad` with an error message to reject invalid arguments.
Break [Sys] | Exception raised on interactive interrupt if `Sys.catch_break` is enabled.
C
Continuation_already_resumed [Effect] | Exception raised when a continuation is continued or discontinued more than once.
D
Division_by_zero [Stdlib] | Exception raised by integer division and remainder operations when their second argument is zero.
E
Empty [Stack] | Raised when `Stack.pop` or `Stack.top` is applied to an empty stack.
Empty [Queue] | Raised when `Queue.take` or `Queue.peek` is applied to an empty queue.
End_of_file [Stdlib] | Exception raised by input functions to signal that the end of file has been reached.
Error [Dynlink] | Errors in dynamic linking are reported by raising the `Error` exception with a description of the error.
Exit [Thread] | Exception raised by user code to initiate termination of the current thread.
Exit [Stdlib] | The `Exit` exception is not raised by any library function.
F
Failure [Stdlib] | Exception raised by library functions to signal that they are undefined on the given arguments.
Finally_raised [Fun] | `Finally_raised exn` is raised by `protect ~finally work` when `finally` raises an exception `exn`.
Forced_twice [Seq] | This exception is raised when a sequence returned by `Seq.once` (or a suffix of it) is queried more than once.
H
Help [Arg] | Raised by `Arg.parse_argv` when the user asks for help.
I
Invalid_argument [Stdlib] | Exception raised by library functions to signal that the given arguments do not make sense.
M
Match_failure [Stdlib] | Exception raised when none of the cases of a pattern-matching apply.
N
Not_found [Stdlib] | Exception raised by search functions when the desired object could not be found.
O
Out_of_memory [Stdlib] | Exception raised by the garbage collector when there is insufficient memory to complete the computation.
P
Parse_error [Parsing] | Raised when a parser encounters a syntax error.
S
Scan_failure [Scanf] | When the input can not be read according to the format string specification, formatted input functions typically raise exception `Scan_failure`.
Stack_overflow [Stdlib] | Exception raised by the bytecode interpreter when the evaluation stack reaches its maximal size.
Sys_blocked_io [Stdlib] | A special case of Sys_error raised when no I/O is possible on a non-blocking I/O channel.
Sys_error [Stdlib] | Exception raised by the input/output functions to report an operating system error.
U
Undefined [CamlinternalLazy] |
Undefined [Lazy] | Raised when forcing a suspension concurrently from multiple fibers, systhreads or domains, or when the suspension tries to force itself recursively.
Undefined_recursive_module [Stdlib] | Exception raised when an ill-founded recursive module definition is evaluated.
Unhandled [Effect] | `Unhandled e` is raised when effect `e` is performed and there is no handler for it.
Unix_error [UnixLabels] | Raised by the system calls below when an error is encountered.
Unix_error [Unix] | Raised by the system calls below when an error is encountered.