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
25
tests/errmsgs/t5167_5.nim
Normal file
25
tests/errmsgs/t5167_5.nim
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
discard """
|
||||
cmd: "nim check $file"
|
||||
errormsg: "'m' has unspecified generic parameters"
|
||||
nimout: '''
|
||||
t5167_5.nim(20, 9) Error: 't' has unspecified generic parameters
|
||||
t5167_5.nim(21, 5) Error: 't' has unspecified generic parameters
|
||||
t5167_5.nim(23, 9) Error: 'm' has unspecified generic parameters
|
||||
t5167_5.nim(24, 5) Error: 'm' has unspecified generic parameters
|
||||
'''
|
||||
"""
|
||||
|
||||
template t[B]() =
|
||||
echo "foo1"
|
||||
|
||||
macro m[T]: stmt = nil
|
||||
|
||||
proc bar(x: proc (x: int)) =
|
||||
echo "bar"
|
||||
|
||||
let x = t
|
||||
bar t
|
||||
|
||||
let y = m
|
||||
bar m
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue