patch 8.2.2540: Vim9: no error for using script var name for argument

Problem:    Vim9: no error for using script var name for argument.
Solution:   Check for this error. (closes #7868)
diff --git a/src/userfunc.c b/src/userfunc.c
index 450582c..8579c3b 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -80,6 +80,14 @@
 	    semsg(_("E125: Illegal argument: %s"), arg);
 	return arg;
     }
+
+    // Vim9 script: cannot use script var name for argument.
+    if (argtypes != NULL && script_var_exists(arg, p - arg, FALSE, NULL) == OK)
+    {
+	semsg(_(e_variable_already_declared_in_script), arg);
+	return arg;
+    }
+
     if (newargs != NULL && ga_grow(newargs, 1) == FAIL)
 	return arg;
     if (newargs != NULL)