diff options
Diffstat (limited to 'compiler/transf.nim')
-rw-r--r-- | compiler/transf.nim | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/transf.nim b/compiler/transf.nim index c455e3319..25a8bc5dd 100644 --- a/compiler/transf.nim +++ b/compiler/transf.nim @@ -651,6 +651,8 @@ proc transformFor(c: PTransf, n: PNode): PTransNode = var t = formal.typ if formal.ast != nil and formal.ast.typ.destructor != nil and t.destructor == nil: t = formal.ast.typ # better use the type that actually has a destructor. + elif t.destructor == nil and arg.typ.destructor != nil: + t = arg.typ # generate a temporary and produce an assignment statement: var temp = newTemp(c, t, formal.info) #temp.sym.flags.incl sfCursor |