diff options
author | Araq <rumpf_a@web.de> | 2015-08-09 23:53:22 +0200 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2015-08-09 23:53:22 +0200 |
commit | 799e0f3274edd9d0fadcc58640afa32b3bdc6da1 (patch) | |
tree | b90db848c9ba626681659d4838dc171c398f605d /compiler | |
parent | f934c9213220bbb4f0ac13aa804ab14c3393202e (diff) | |
download | Nim-799e0f3274edd9d0fadcc58640afa32b3bdc6da1.tar.gz |
fixes #3066
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/vmgen.nim | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/vmgen.nim b/compiler/vmgen.nim index 6a59b3384..73fcc5a27 100644 --- a/compiler/vmgen.nim +++ b/compiler/vmgen.nim @@ -1184,6 +1184,9 @@ proc checkCanEval(c: PCtx; n: PNode) = if s.kind in {skVar, skTemp, skLet, skParam, skResult} and not s.isOwnedBy(c.prc.sym) and s.owner != c.module: cannotEval(n) + elif s.kind in {skProc, skConverter, skMethod, + skIterator, skClosureIterator} and sfForward in s.flags: + cannotEval(n) proc isTemp(c: PCtx; dest: TDest): bool = result = dest >= 0 and c.prc.slots[dest].kind >= slotTempUnknown |