summary refs log tree commit diff stats
path: root/tests/stdlib
diff options
context:
space:
mode:
authorAditya Siram <aditya.siram@gmail.com>2020-12-03 06:40:28 -0600
committerGitHub <noreply@github.com>2020-12-03 13:40:28 +0100
commit23447ffdce7415e2313654a61bdd9a23803f6538 (patch)
treea80096268c15d90dbbfac5df2cabaf1e247073a8 /tests/stdlib
parent849bc36edac47d5f62222ffc6beb015a770fc1f6 (diff)
downloadNim-23447ffdce7415e2313654a61bdd9a23803f6538.tar.gz
Fixes #16219, `hasArgOfName` ignoring argument sets. (#16233)
* Fixes #16219, `hasArgOfName` ignoring argument sets.

* Fix test and simplify ident traversal.

* Moved test into a block and removed some boilerplate.

* Fix some argument formatting.

* use ..<

* Change the preceding line too

Co-authored-by: Clyybber <darkmine956@gmail.com>
Diffstat (limited to 'tests/stdlib')
-rw-r--r--tests/stdlib/tmacros.nim9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/stdlib/tmacros.nim b/tests/stdlib/tmacros.nim
new file mode 100644
index 000000000..0cc1e340c
--- /dev/null
+++ b/tests/stdlib/tmacros.nim
@@ -0,0 +1,9 @@
+import macros
+
+block: # hasArgOfName
+  macro m(u: untyped): untyped =
+    for name in ["s","i","j","k","b","xs","ys"]:
+      doAssert hasArgOfName(params u,name)
+    doAssert not hasArgOfName(params u,"nonexistent")
+
+  proc p(s: string; i,j,k: int; b: bool; xs,ys: seq[int] = @[]) {.m.} = discard