summary refs log tree commit diff stats
path: root/tests/macros/tmacro3.nim
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2014-01-17 08:47:51 +0100
committerAraq <rumpf_a@web.de>2014-01-17 08:47:51 +0100
commit383fbca27ef4f4e0b5eae0e0e02029fe644248ac (patch)
tree5ac65389061921d1b6122b8cbf83cec411ff617d /tests/macros/tmacro3.nim
parent12247b3f56a74836af874d707bf63452c11dcf92 (diff)
downloadNim-383fbca27ef4f4e0b5eae0e0e02029fe644248ac.tar.gz
better tester
Diffstat (limited to 'tests/macros/tmacro3.nim')
-rw-r--r--tests/macros/tmacro3.nim31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/macros/tmacro3.nim b/tests/macros/tmacro3.nim
new file mode 100644
index 000000000..162212326
--- /dev/null
+++ b/tests/macros/tmacro3.nim
@@ -0,0 +1,31 @@
+discard """
+  output: ""
+"""
+
+import  macros
+
+type 
+    TA = tuple[a: int]
+    PA = ref TA
+
+macro test*(a: stmt): stmt {.immediate.} =
+  var val: PA
+  new(val)
+  val.a = 4
+
+test:
+  "hi"
+
+macro test2*(a: stmt): stmt {.immediate.} =
+  proc testproc(recurse: int) =
+    echo "Thats weird"
+    var o : PNimrodNode = nil
+    echo "  no its not!"
+    o = newNimNode(nnkNone)
+    if recurse > 0:
+      testproc(recurse - 1)
+  testproc(5)
+
+test2:
+  "hi"
+