diff options
-rw-r--r-- | compiler/commands.nim | 9 | ||||
-rw-r--r-- | doc/advopt.txt | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/compiler/commands.nim b/compiler/commands.nim index b5bcfabc5..b962e8f39 100644 --- a/compiler/commands.nim +++ b/compiler/commands.nim @@ -617,6 +617,15 @@ proc processSwitch*(switch, arg: string, pass: TCmdLinePass, info: TLineInfo; of "run", "r": expectNoArg(conf, switch, arg, pass, info) incl(conf.globalOptions, optRun) + of "errormax": + expectArg(conf, switch, arg, pass, info) + conf.errorMax = block: + # Note: `nim check` (etc) can overwrite this. + # `0` is meaningless, give it a useful meaning as in clang's -ferror-limit + # If user doesn't set this flag and the code doesn't either, it'd + # have the same effect as errorMax = 1 + let ret = parseInt(arg) + if ret == 0: high(int) else: ret of "verbosity": expectArg(conf, switch, arg, pass, info) let verbosity = parseInt(arg) diff --git a/doc/advopt.txt b/doc/advopt.txt index 7677ba0d3..baab4f6e5 100644 --- a/doc/advopt.txt +++ b/doc/advopt.txt @@ -104,6 +104,7 @@ Advanced options: value = number of processors (0 for auto-detect) --incremental:on|off only recompile the changed modules (experimental!) --verbosity:0|1|2|3 set Nim's verbosity level (1 is default) + --errorMax:int stop after n errors in semantic pass; 0 means unlimited --experimental:$1 enable experimental language feature -v, --version show detailed version information |