diff options
Diffstat (limited to 'compiler/closureiters.nim')
-rw-r--r-- | compiler/closureiters.nim | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/closureiters.nim b/compiler/closureiters.nim index 79038a4f5..a39dd0e71 100644 --- a/compiler/closureiters.nim +++ b/compiler/closureiters.nim @@ -1372,6 +1372,7 @@ proc preprocess(c: var PreprocessContext; n: PNode): PNode = # detect: 'finally: raises X' which is currently not supported. We produce # an error for this case for now. All this will be done properly with Yuriy's # patch. + result = n case n.kind of nkTryStmt: @@ -1388,6 +1389,7 @@ proc preprocess(c: var PreprocessContext; n: PNode): PNode = discard c.finallys.pop() of nkWhileStmt, nkBlockStmt: + if n.hasYields == false: return n c.blocks.add((n, c.finallys.len)) for i in 0 ..< n.len: result[i] = preprocess(c, n[i]) |