patch 8.2.4586: Vim9: no error for using lower case name for "func" argument
Problem: Vim9: no error for using lower case name for "func" argument.
(Ernie Rael)
Solution: Check the name as soon as the type is known.
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index f7be6a0..5b904fa 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1479,12 +1479,12 @@
lines =<< trim END
vim9script
- def g:TestFunc(f: func)
+ def g:TestFunc(F: func)
enddef
legacy call g:TestFunc({-> 0})
delfunc g:TestFunc
- def g:TestFunc(f: func(number))
+ def g:TestFunc(F: func(number))
enddef
legacy call g:TestFunc({nr -> 0})
delfunc g:TestFunc
@@ -3788,8 +3788,8 @@
return x + 1
enddef
- def G(g: func): dict<func>
- return {f: g}
+ def G(Fg: func): dict<func>
+ return {f: Fg}
enddef
def H(d: dict<func>): string
@@ -3799,6 +3799,8 @@
v9.CheckScriptSuccess(lines + ['echo H(G(F1))'])
v9.CheckScriptFailure(lines + ['echo H(G(F2))'], 'E1013:')
+
+ v9.CheckScriptFailure(lines + ['def SomeFunc(ff: func)', 'enddef'], 'E704:')
enddef
def Test_call_func_with_null()