summary refs log tree commit diff stats
path: root/tests/macros/tmacro3.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/macros/tmacro3.nim')
-rw-r--r--tests/macros/tmacro3.nim30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/macros/tmacro3.nim b/tests/macros/tmacro3.nim
new file mode 100644
index 000000000..38e8349e7
--- /dev/null
+++ b/tests/macros/tmacro3.nim
@@ -0,0 +1,30 @@
+discard """
+  output: ""
+"""
+
+import  macros
+
+type
+    TA = tuple[a: int]
+    PA = ref TA
+
+macro test*(a: untyped): untyped =
+  var val: PA
+  new(val)
+  val.a = 4
+
+test:
+  "hi"
+
+macro test2*(a: untyped): untyped =
+  proc testproc(recurse: int) =
+    echo "That's weird"
+    var o : NimNode = nil
+    echo "  no its not!"
+    o = newNimNode(nnkNone)
+    if recurse > 0:
+      testproc(recurse - 1)
+  testproc(5)
+
+test2:
+  "hi"