summary refs log tree commit diff stats
path: root/tests/template
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2017-02-24 00:32:03 +0100
committerAndreas Rumpf <rumpf_a@web.de>2017-02-24 00:32:14 +0100
commit2d546ca0ac80486b8f31e389ef19e4d65093a1fa (patch)
tree68b582f85b7d0da2d871b233a4a9be153c93dd97 /tests/template
parent22789a0bfc326ae6a292679b4e9d9eb2a295c26a (diff)
downloadNim-2d546ca0ac80486b8f31e389ef19e4d65093a1fa.tar.gz
fixes #5417
Diffstat (limited to 'tests/template')
-rw-r--r--tests/template/tgensym_label.nim18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/template/tgensym_label.nim b/tests/template/tgensym_label.nim
new file mode 100644
index 000000000..fd3b0a1ee
--- /dev/null
+++ b/tests/template/tgensym_label.nim
@@ -0,0 +1,18 @@
+
+# bug #5417
+import macros
+
+macro genBody: untyped =
+  let sbx = genSym(nskLabel, "test")
+  when true:
+    result = quote do:
+      block `sbx`:
+        break `sbx`
+  else:
+    template foo(s1, s2) =
+      block s1:
+        break s2
+    result = getAst foo(sbx, sbx)
+
+proc test() =
+  genBody()