This commit is contained in:
Araq
2017-03-30 12:53:32 +02:00
parent 2740bcddaa
commit 30c99a8440
2 changed files with 32 additions and 2 deletions

View File

@@ -0,0 +1,29 @@
discard """
output: '''Check passed
Check passed'''
"""
# bug #5628
proc checkException(ex: ref Exception) =
doAssert(ex.name == "ValueError")
doAssert(ex.msg == "SecondException")
doAssert(ex.parent != nil)
doAssert(ex.parent.name == "KeyError")
doAssert(ex.parent.msg == "FirstException")
echo "Check passed"
var e: ref Exception
try:
try:
raise newException(KeyError, "FirstException")
except:
raise newException(ValueError, "SecondException", getCurrentException())
except:
e = getCurrentException()
try:
checkException(e) # passes here
raise e
except ValueError:
checkException(getCurrentException()) # fails here