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
diff --git a/src/testdir/test_method.vim b/src/testdir/test_method.vim
index 262c08c..6b62d36 100644
--- a/src/testdir/test_method.vim
+++ b/src/testdir/test_method.vim
@@ -131,11 +131,12 @@
   eval [1, 2, 3]  
 	\ ->sort(
 	\ )
-  eval [1, 2, 3]-> sort()
+  eval [1, 2, 3]->sort()
 
   call assert_fails('eval [1, 2, 3]->sort ()', 'E274:')
   call assert_fails('eval [1, 2, 3] ->sort ()', 'E274:')
   call assert_fails('eval [1, 2, 3]-> sort ()', 'E274:')
+  call assert_fails('eval [1, 2, 3]-> sort()', 'E274:')
 endfunc
 
 func Test_method_lambda()
diff --git a/src/version.c b/src/version.c
index 7635c2f..1aef3c7 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2855,
+/**/
     2854,
 /**/
     2853,