patch 8.2.2855: white space after "->" does not give E274
Problem: White space after "->" does not give E274.
Solution: Do not skip white space in legacy script. (closes #8212)
diff --git a/src/eval.c b/src/eval.c
index 0d4f5fe..97c5f78 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -5916,10 +5916,18 @@
}
else if (p[0] == '-' && p[1] == '>')
{
- *arg = skipwhite(p + 2);
+ if (in_vim9script())
+ *arg = skipwhite(p + 2);
+ else
+ *arg = p + 2;
if (ret == OK)
{
- if ((**arg == '{' && !in_vim9script()) || **arg == '(')
+ if (VIM_ISWHITE(**arg))
+ {
+ emsg(_(e_nowhitespace));
+ ret = FAIL;
+ }
+ else if ((**arg == '{' && !in_vim9script()) || **arg == '(')
// expr->{lambda}() or expr->(lambda)()
ret = eval_lambda(arg, rettv, evalarg, verbose);
else