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.
/* 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;
}
# define ex_endif ex_ni
# define ex_else ex_ni
# define ex_while ex_ni
-# define ex_for ex_ni
# define ex_continue ex_ni
# define ex_break ex_ni
# define ex_endwhile ex_ni
-# define ex_endfor ex_ni
# define ex_throw ex_ni
# define ex_try ex_ni
# define ex_catch ex_ni
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 329,
/**/
328,
/**/