This commit is contained in:
Fanael Linithien
2020-11-12 09:28:32 +01:00
committed by GitHub
parent e5db5316c2
commit 7d4f70280e
2 changed files with 17 additions and 0 deletions

View File

@@ -399,6 +399,7 @@ proc allRoots(n: PNode; result: var seq[PSym]; followDotExpr = true) =
proc destMightOwn(c: var Partitions; dest: var VarIndex; n: PNode) =
## Analyse if 'n' is an expression that owns the data, if so mark 'dest'
## with 'ownsData'.
if n.typ == nil: return
case n.kind
of nkEmpty, nkCharLit..nkNilLit:
# primitive literals including the empty are harmless:

16
tests/arc/t15909.nim Normal file
View File

@@ -0,0 +1,16 @@
discard """
action: run
cmd: "nim c --gc:arc $file"
"""
proc f1() {.noreturn.} = raise newException(CatchableError, "")
proc f2(y: int): int =
if y != 0:
y
else:
f1()
doAssert f2(5) == 5
doAssertRaises(CatchableError):
discard f2(0)