fix #19580; add warning for bare except: clause (#21099)

* fix #19580; add warning for bare except: clause

* fixes some easy ones

* Update doc/manual.md

* fixes docs

* Update changelog.md

* addition

* Apply suggestions from code review

Co-authored-by: Jacek Sieka <arnetheduck@gmail.com>

* Update doc/tut2.md

Co-authored-by: Jacek Sieka <arnetheduck@gmail.com>
This commit is contained in:
ringabout
2022-12-15 13:45:36 +08:00
committed by GitHub
parent 9a50033d5b
commit 91ce8c385d
14 changed files with 50 additions and 26 deletions

View File

@@ -98,6 +98,7 @@ template doAssertRaises*(exception: typedesc, code: untyped) =
const begin = "expected raising '" & astToStr(exception) & "', instead"
const msgEnd = " by: " & astToStr(code)
template raisedForeign {.gensym.} = raiseAssert(begin & " raised foreign exception" & msgEnd)
{.warning[BareExcept]:off.}
when Exception is exception:
try:
if true:
@@ -116,5 +117,6 @@ template doAssertRaises*(exception: typedesc, code: untyped) =
mixin `$` # alternatively, we could define $cstring in this module
raiseAssert(begin & " raised '" & $e.name & "'" & msgEnd)
except: raisedForeign()
{.warning[BareExcept]:on.}
if wrong:
raiseAssert(begin & " nothing was raised" & msgEnd)