diff options
Diffstat (limited to 'lib/system.nim')
-rw-r--r-- | lib/system.nim | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/lib/system.nim b/lib/system.nim index 5dafd6e13..4cdc212b9 100644 --- a/lib/system.nim +++ b/lib/system.nim @@ -909,12 +909,17 @@ var programResult* {.exportc: "nim_program_result".}: int proc quit*(errorcode: int = QuitSuccess) {. magic: "Exit", importc: "exit", noDecl, noReturn.} - ## stops the program immediately; before stopping the program the - ## "quit procedures" are called in the opposite order they were added - ## with ``addQuitProc``. ``quit`` never returns and ignores any - ## exception that may have been raised by the quit procedures. - ## It does *not* call the garbage collector to free all the memory, - ## unless a quit procedure calls ``GC_collect``. + ## Stops the program immediately with an exit code. + ## + ## Before stopping the program the "quit procedures" are called in the + ## opposite order they were added with ``addQuitProc``. ``quit`` never + ## returns and ignores any exception that may have been raised by the quit + ## procedures. It does *not* call the garbage collector to free all the + ## memory, unless a quit procedure calls ``GC_collect``. + ## + ## The proc ``quit(QuitSuccess)`` is called implicitly when your nimrod + ## program finishes without incident. A raised unhandled exception is + ## equivalent to calling ``quit(QuitFailure)``. template sysAssert(cond: bool, msg: string) = when defined(useSysAssert): |