summaryrefslogtreecommitdiff
path: root/src/testing.c
diff options
context:
space:
mode:
authorYegappan Lakshmanan <yegappan@yahoo.com>2021-07-20 17:51:51 +0200
committerBram Moolenaar <Bram@vim.org>2021-07-20 17:51:51 +0200
commit83494b4ac61898f687d6ef9dce4bad5802fb8e51 (patch)
tree36f06f4a70bd9a515527064cd8985029ab27c6a6 /src/testing.c
parent9bb0dad0d8283c86fddf5b950f4fbb6fb8f12741 (diff)
downloadvim-git-83494b4ac61898f687d6ef9dce4bad5802fb8e51.tar.gz
patch 8.2.3188: Vim9: argument types are not checked at compile timev8.2.3188
Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks, also at runtime. (Yegappan Lakshmanan, closes #8587)
Diffstat (limited to 'src/testing.c')
-rw-r--r--src/testing.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/testing.c b/src/testing.c
index 42030d726..5b2f7af13 100644
--- a/src/testing.c
+++ b/src/testing.c
@@ -1246,15 +1246,12 @@ f_test_gui_mouse_event(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
int repeated_click;
int_u mods;
- if (argvars[0].v_type != VAR_NUMBER
- || (argvars[1].v_type) != VAR_NUMBER
- || (argvars[2].v_type) != VAR_NUMBER
- || (argvars[3].v_type) != VAR_NUMBER
- || (argvars[4].v_type) != VAR_NUMBER)
- {
- emsg(_(e_invarg));
+ if (check_for_number_arg(argvars, 0) == FAIL
+ || check_for_number_arg(argvars, 1) == FAIL
+ || check_for_number_arg(argvars, 2) == FAIL
+ || check_for_number_arg(argvars, 3) == FAIL
+ || check_for_number_arg(argvars, 4) == FAIL)
return;
- }
button = tv_get_number(&argvars[0]);
row = tv_get_number(&argvars[1]);