summary refs log tree commit diff stats
path: root/doc
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2020-01-01 10:01:49 +0100
committerGitHub <noreply@github.com>2020-01-01 10:01:49 +0100
commitc3344862b0d6061cc1581f29c81b29b75c78615a (patch)
tree75661179ec450bb4e2783603c09f4304dfe42a45 /doc
parent8a63caca07349742d071dcd3a7d3e3055fe617cf (diff)
downloadNim-c3344862b0d6061cc1581f29c81b29b75c78615a.tar.gz
--exception:goto switch for deterministic exception handling (#12977)
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.
Diffstat (limited to 'doc')
-rw-r--r--doc/advopt.txt3
1 files changed, 2 insertions, 1 deletions
diff --git a/doc/advopt.txt b/doc/advopt.txt
index fef9f6895..e7626bd89 100644
--- a/doc/advopt.txt
+++ b/doc/advopt.txt
@@ -98,12 +98,13 @@ Advanced options:
   --skipProjCfg:on|off      do not read the project's configuration file
   --gc:refc|markAndSweep|boehm|go|none|regions
                             select the GC to use; default is 'refc'
+  --exceptions:setjmp|cpp|goto|quirky
+                            select the exception handling implementation
   --index:on|off            turn index file generation on|off
   --putenv:key=value        set an environment variable
   --NimblePath:PATH         add a path for Nimble support
   --noNimblePath            deactivate the Nimble path
   --clearNimblePath         empty the list of Nimble package search paths
-  --noCppExceptions         use default exception handling with C++ backend
   --cppCompileToNamespace:namespace
                             use the provided namespace for the generated C++ code,
                             if no namespace is provided "Nim" will be used