This commit is contained in:
zah
2017-03-19 21:33:21 +02:00
committed by Andreas Rumpf
parent e20af5cec6
commit 1d6018726e
2 changed files with 17 additions and 0 deletions

View File

@@ -577,6 +577,9 @@ proc trackOperand(tracked: PEffects, n: PNode, paramType: PType) =
markGcUnsafe(tracked, a)
elif tfNoSideEffect notin op.flags:
markSideEffect(tracked, a)
if paramType != nil and paramType.kind == tyVar:
if n.kind == nkSym and isLocalVar(tracked, n.sym):
makeVolatile(tracked, n.sym)
notNilCheck(tracked, n, paramType)
proc breaksBlock(n: PNode): bool =

14
tests/ccgbugs/t5296.nim Normal file
View File

@@ -0,0 +1,14 @@
discard """
cmd: "nim c -d:release $file"
output: 1
"""
proc bug() : void =
var x = 0
try:
inc x
raise new(Exception)
except Exception:
echo x
bug()