patch 8.2.1074: Vim9: no line break allowed after some operators

Problem:    Vim9: no line break allowed after some operators.
Solution:   Skip a line break after the operator.  Add
            eval_may_get_next_line() to simplify checking for a line break.
diff --git a/src/userfunc.c b/src/userfunc.c
index b358ecb..51c437f 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -402,17 +402,17 @@
     partial_T   *pt = NULL;
     int		varargs;
     int		ret;
-    char_u	*start = skipwhite(*arg + 1);
+    char_u	*start;
     char_u	*s, *e;
     int		*old_eval_lavars = eval_lavars_used;
     int		eval_lavars = FALSE;
-    int		getnext;
     char_u	*tofree = NULL;
 
     ga_init(&newargs);
     ga_init(&newlines);
 
     // First, check if this is a lambda expression. "->" must exist.
+    start = skipwhite(*arg + 1);
     ret = get_function_args(&start, '-', NULL, NULL, NULL, NULL, TRUE,
 								   NULL, NULL);
     if (ret == FAIL || *start != '>')
@@ -435,10 +435,7 @@
 	eval_lavars_used = &eval_lavars;
 
     // Get the start and the end of the expression.
-    *arg = skipwhite(*arg + 1);
-    eval_next_non_blank(*arg, evalarg, &getnext);
-    if (getnext)
-	*arg = eval_next_line(evalarg);
+    *arg = skipwhite_and_linebreak(*arg + 1, evalarg);
     s = *arg;
     ret = skip_expr_concatenate(&s, arg, evalarg);
     if (ret == FAIL)
@@ -451,10 +448,7 @@
     }
 
     e = *arg;
-    *arg = skipwhite(*arg);
-    eval_next_non_blank(*arg, evalarg, &getnext);
-    if (getnext)
-	*arg = eval_next_line(evalarg);
+    *arg = skipwhite_and_linebreak(*arg, evalarg);
     if (**arg != '}')
     {
 	semsg(_("E451: Expected }: %s"), *arg);