diff src/evalfunc.c @ 22620:b5d68d8a5187

patch 8.2.1858: Vim9: filter functions return number instead of bool Commit: https://github.com/vim/vim/commit/403dc31f5a03b5858f62e72c3407ffaf827b3005 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Oct 17 19:29:51 2020 +0200 patch 8.2.1858: Vim9: filter functions return number instead of bool Problem: Vim9: filter functions return number instead of bool. Solution: Return v:true instead of one. (closes https://github.com/vim/vim/issues/7144)
author Bram Moolenaar <Bram@vim.org>
date Sat, 17 Oct 2020 19:30:05 +0200
parents 0cdb03e73ce9
children eabe2c1444ea
line wrap: on
line diff
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -270,6 +270,11 @@ ret_any(int argcount UNUSED, type_T **ar
     return &t_any;
 }
     static type_T *
+ret_bool(int argcount UNUSED, type_T **argtypes UNUSED)
+{
+    return &t_bool;
+}
+    static type_T *
 ret_number(int argcount UNUSED, type_T **argtypes UNUSED)
 {
     return &t_number;
@@ -793,8 +798,8 @@ static funcentry_T global_functions[] =
     {"popup_close",	1, 2, FEARG_1,	  ret_void,	PROP_FUNC(f_popup_close)},
     {"popup_create",	2, 2, FEARG_1,	  ret_number,	PROP_FUNC(f_popup_create)},
     {"popup_dialog",	2, 2, FEARG_1,	  ret_number,	PROP_FUNC(f_popup_dialog)},
-    {"popup_filter_menu", 2, 2, 0,	  ret_number,	PROP_FUNC(f_popup_filter_menu)},
-    {"popup_filter_yesno", 2, 2, 0,	  ret_number,	PROP_FUNC(f_popup_filter_yesno)},
+    {"popup_filter_menu", 2, 2, 0,	  ret_bool,	PROP_FUNC(f_popup_filter_menu)},
+    {"popup_filter_yesno", 2, 2, 0,	  ret_bool,	PROP_FUNC(f_popup_filter_yesno)},
     {"popup_findinfo",	0, 0, 0,	  ret_number,	PROP_FUNC(f_popup_findinfo)},
     {"popup_findpreview", 0, 0, 0,	  ret_number,	PROP_FUNC(f_popup_findpreview)},
     {"popup_getoptions", 1, 1, FEARG_1,	  ret_dict_any,	PROP_FUNC(f_popup_getoptions)},