updated for version 7.3.329
Problem: When skipping over code from ":for" to ":endfor" get an error for
calling a dict function. (Yasuhiro Matsumoto)
Solution: Ignore errors when skipping over :call command.
diff --git a/src/eval.c b/src/eval.c
index 780ed9e..efbcfaf 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -3377,7 +3377,10 @@
/* trans_function_name() doesn't work well when skipping, use eval0()
* instead to skip to any following command, e.g. for:
* :if 0 | call dict.foo().bar() | endif */
- eval0(eap->arg, &rettv, &eap->nextcmd, FALSE);
+ ++emsg_skip;
+ if (eval0(eap->arg, &rettv, &eap->nextcmd, FALSE) != FAIL)
+ clear_tv(&rettv);
+ --emsg_skip;
return;
}