This commit returns to a bit less strict checking of the number of macro arguments, because some old immediate macros rely on a behavior where even the arity of the macro is not being checked. It may be better if such macros are just declared to use varargs[expr], but this remains for another day.
This commit is contained in:
parent
6e358e3187
commit
1be0022e7c
17 changed files with 134 additions and 4 deletions
20
tests/errmsgs/t5167_4.nim
Normal file
20
tests/errmsgs/t5167_4.nim
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
discard """
|
||||
errormsg: "type mismatch: got (proc [*missing parameters*](x: int) | proc (x: string){.gcsafe, locks: 0.})"
|
||||
line: 19
|
||||
"""
|
||||
|
||||
type
|
||||
TGeneric[T] = object
|
||||
x: int
|
||||
|
||||
proc foo[B](x: int) =
|
||||
echo "foo1"
|
||||
|
||||
proc foo(x: string) =
|
||||
echo "foo2"
|
||||
|
||||
proc bar(x: proc (x: int)) =
|
||||
echo "bar"
|
||||
|
||||
bar foo
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue