patch 8.2.3188: Vim9: argument types are not checked at compile time
Problem: Vim9: argument types are not checked at compile time.
Solution: Add several more type checks, also at runtime. (Yegappan
Lakshmanan, closes #8587)
diff --git a/src/sign.c b/src/sign.c
index bd8cb6c..c208a0e 100644
--- a/src/sign.c
+++ b/src/sign.c
@@ -2300,6 +2300,12 @@
if (rettv_list_alloc_id(rettv, aid_sign_getplaced) != OK)
return;
+ if (in_vim9script()
+ && (check_for_opt_string_or_number_arg(argvars, 0) == FAIL
+ || (argvars[0].v_type != VAR_UNKNOWN
+ && check_for_opt_dict_arg(argvars, 1) == FAIL)))
+ return;
+
if (argvars[0].v_type != VAR_UNKNOWN)
{
// get signs placed in the specified buffer