]> granicus.if.org Git - vim/commitdiff
patch 8.2.1723: Vim9: Variable argument name cannot start with underscore v8.2.1723
authorBram Moolenaar <Bram@vim.org>
Mon, 21 Sep 2020 20:02:49 +0000 (22:02 +0200)
committerBram Moolenaar <Bram@vim.org>
Mon, 21 Sep 2020 20:02:49 +0000 (22:02 +0200)
Problem:    Vim9: Variable argument name cannot start with underscore.
Solution:   Use eval_isnamec1(). (closes #6988)

src/testdir/test_vim9_func.vim
src/userfunc.c
src/version.c

index 40516509cb7e176cba1fd30a6d1de751e3388628..e6f40cca6f926aac33426a08b6716fc2112eab3a 100644 (file)
@@ -372,6 +372,15 @@ def Test_call_def_varargs()
   END
   CheckScriptSuccess(lines)
 
+  lines =<< trim END
+      vim9script
+      def Func(..._l: list<string>)
+        echo _l
+      enddef
+      Func('a', 'b', 'c')
+  END
+  CheckScriptSuccess(lines)
+
   lines =<< trim END
       vim9script
       def Func(...l: list<string>)
index be2a18c0d688c2f9949feb4421db88de234565e4..eb9dadff88273d5fa8dd5fd1703ce0dd1f3e13a1 100644 (file)
@@ -211,7 +211,7 @@ get_function_args(
            if (argtypes != NULL)
            {
                // ...name: list<type>
-               if (!ASCII_ISALPHA(*p))
+               if (!eval_isnamec1(*p))
                {
                    emsg(_(e_missing_name_after_dots));
                    break;
index 7cc9e7bebd72582f258165b5c64ba9f403365367..b6cb4773f2b3b807e0bfd733eeb0b11d59a6d9cc 100644 (file)
@@ -750,6 +750,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1723,
 /**/
     1722,
 /**/