diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2016-01-08 12:08:42 +0100 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2016-01-08 12:08:42 +0100 |
commit | 0844941b35d22093861a42cb4d3070a1f54f7896 (patch) | |
tree | 8d305b073049123232706d21ddc87e2dee126c59 | |
parent | cd707084d1448f1676a2a2395cce27e3021d7c2d (diff) | |
download | Nim-0844941b35d22093861a42cb4d3070a1f54f7896.tar.gz |
fixes regressions
-rw-r--r-- | compiler/transf.nim | 2 | ||||
-rw-r--r-- | tests/destructor/tdestructor3.nim | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/compiler/transf.nim b/compiler/transf.nim index ff790306b..dd8dd1519 100644 --- a/compiler/transf.nim +++ b/compiler/transf.nim @@ -735,6 +735,8 @@ proc transform(c: PTransf, n: PNode): PTransNode = var s = n.sons[namePos].sym if n.typ != nil and s.typ.callConv == ccClosure: result = transformSym(c, n.sons[namePos]) + # use the same node as before if still a symbol: + if result.PNode.kind == nkSym: result = PTransNode(n) else: result = PTransNode(n) of nkMacroDef: diff --git a/tests/destructor/tdestructor3.nim b/tests/destructor/tdestructor3.nim index 0968f1fd7..d0c53c7bd 100644 --- a/tests/destructor/tdestructor3.nim +++ b/tests/destructor/tdestructor3.nim @@ -19,10 +19,11 @@ proc `=`(lhs: var T, rhs: T) = proc `=destroy`(v: var T) = echo "destroy" -block: +proc usedToBeBlock = var v1 : T var v2 : T = v1 +usedToBeBlock() # bug #1632 |