summary refs log tree commit diff stats
path: root/compiler/parser.nim
diff options
context:
space:
mode:
authorZahary Karadjov <zahary@gmail.com>2017-04-10 17:26:50 +0300
committerZahary Karadjov <zahary@gmail.com>2017-04-10 17:26:50 +0300
commitf7b10e213b81588d560e37aa5f7c8b0d10ea5689 (patch)
tree29df85ab757f066769da0dac5c0afc31f3bd4bb3 /compiler/parser.nim
parent8b63b84924ed9de9d8bd3f348eac597e186916a0 (diff)
downloadNim-f7b10e213b81588d560e37aa5f7c8b0d10ea5689.tar.gz
support post expression blocks in return and yield
Diffstat (limited to 'compiler/parser.nim')
-rw-r--r--compiler/parser.nim4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/parser.nim b/compiler/parser.nim
index 8b335efd5..178006e46 100644
--- a/compiler/parser.nim
+++ b/compiler/parser.nim
@@ -1344,7 +1344,9 @@ proc parseReturnOrRaise(p: var TParser, kind: TNodeKind): PNode =
     # NL terminates:
     addSon(result, ast.emptyNode)
   else:
-    addSon(result, parseExpr(p))
+    var e = parseExpr(p)
+    e = postExprBlocks(p, e)
+    addSon(result, e)
 
 proc parseIfOrWhen(p: var TParser, kind: TNodeKind): PNode =
   #| condStmt = expr colcom stmt COMMENT?