new feature: ability to turn specific warnings to errors
This commit is contained in:
parent
ed44e524b0
commit
9c46927fad
8 changed files with 43 additions and 29 deletions
|
|
@ -21,6 +21,7 @@ type
|
|||
notes*: TNoteKinds
|
||||
features*: set[Feature]
|
||||
otherPragmas*: PNode # every pragma can be pushed
|
||||
warningAsErrors*: TNoteKinds
|
||||
|
||||
POptionEntry* = ref TOptionEntry
|
||||
PProcCon* = ref TProcCon
|
||||
|
|
@ -213,6 +214,7 @@ proc newOptionEntry*(conf: ConfigRef): POptionEntry =
|
|||
result.defaultCC = ccDefault
|
||||
result.dynlib = nil
|
||||
result.notes = conf.notes
|
||||
result.warningAsErrors = conf.warningAsErrors
|
||||
|
||||
proc pushOptionEntry*(c: PContext): POptionEntry =
|
||||
new(result)
|
||||
|
|
@ -221,12 +223,14 @@ proc pushOptionEntry*(c: PContext): POptionEntry =
|
|||
result.defaultCC = prev.defaultCC
|
||||
result.dynlib = prev.dynlib
|
||||
result.notes = c.config.notes
|
||||
result.warningAsErrors = c.config.warningAsErrors
|
||||
result.features = c.features
|
||||
c.optionStack.add(result)
|
||||
|
||||
proc popOptionEntry*(c: PContext) =
|
||||
c.config.options = c.optionStack[^1].options
|
||||
c.config.notes = c.optionStack[^1].notes
|
||||
c.config.warningAsErrors = c.optionStack[^1].warningAsErrors
|
||||
c.features = c.optionStack[^1].features
|
||||
c.optionStack.setLen(c.optionStack.len - 1)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue