diff options
Diffstat (limited to 'compiler/semtempl.nim')
-rw-r--r-- | compiler/semtempl.nim | 6 |
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: |