summary refs log tree commit diff stats
path: root/compiler/semtempl.nim
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/semtempl.nim')
-rw-r--r--compiler/semtempl.nim6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/semtempl.nim b/compiler/semtempl.nim
index 01a0a41bb..2cbbd7b54 100644
--- a/compiler/semtempl.nim
+++ b/compiler/semtempl.nim
@@ -197,6 +197,12 @@ proc addLocalDecl(c: var TemplCtx, n: var PNode, k: TSymKind) =
     else:
       replaceIdentBySym(c.c, n, ident)
   else:
+    if (n.kind == nkPragmaExpr and sonsLen(n) >= 2 and n.sons[1].kind == nkPragma):
+      let pragmaNode = n.sons[1]
+      for i in 0..<pragmaNode.sons.len:
+        openScope(c)
+        pragmaNode.sons[i] = semTemplBody(c,pragmaNode.sons[i])
+        closeScope(c)
     let ident = getIdentNode(c, n)
     if not isTemplParam(c, ident):
       # fix #2670, consider: