patch 9.0.0437: no error when custom completion function returns wrong type
Problem: No error when a custom completion function returns something else
than the expected list.
Solution: Give an error. (closes #11100)
diff --git a/src/eval.c b/src/eval.c
index db8b4e6..f208ab1 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -842,6 +842,7 @@
* Call Vim script function "func" and return the result as a List.
* Uses "argv" and "argc" as call_func_retstr().
* Returns NULL when there is something wrong.
+ * Gives an error when the returned value is not a list.
*/
void *
call_func_retlist(
@@ -856,6 +857,8 @@
if (rettv.v_type != VAR_LIST)
{
+ semsg(_(e_custom_list_completion_function_does_not_return_list_but_str),
+ vartype_name(rettv.v_type));
clear_tv(&rettv);
return NULL;
}