This commit is contained in:
zah 2017-03-19 21:33:21 +02:00 • committed by Andreas Rumpf
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 =