mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-04 12:07:51 +00:00
This implements "deterministic" exception handling for Nim based on goto instead of setjmp. This means raising an exception is much cheaper than in C++'s table based implementations. Supports hard realtime systems. Default for --gc:arc and the C target because it's generally a good idea and arc is all about deterministic behavior. Note: This implies that fatal runtime traps are not catchable anymore! This needs to be documented.
8 lines
181 B
Nim
8 lines
181 B
Nim
discard """
|
|
cmd: "nim c --gc:arc --exceptions:goto $file"
|
|
outputsub: "Error: unhandled exception: Problem [OSError]"
|
|
exitcode: "1"
|
|
"""
|
|
|
|
raise newException(OSError, "Problem")
|