summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--compiler/parser.nim4
-rw-r--r--tests/template/tgensymregression.nim3
2 files changed, 4 insertions, 3 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?
diff --git a/tests/template/tgensymregression.nim b/tests/template/tgensymregression.nim
index 0fadbde41..4cc64a831 100644
--- a/tests/template/tgensymregression.nim
+++ b/tests/template/tgensymregression.nim
@@ -59,14 +59,13 @@ template wrap(body: typed): untyped =
 
 macro makeProc(): typed =
   # Make a template tree
-  result = (quote do:
+  result = quote do:
     proc someProc* =
       wrap do:
         let x = 123
         # Implicit conversion here
         let s: string = x
         echo s
-  )
 
 makeProc()