From ea72038d60401d351faaf1b4a52f4537e719df6f Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 5 May 2022 16:08:55 +0100 Subject: patch 8.2.4872: Vim9: no error for using an expression only Problem: Vim9: no error for using an expression only at the script level when followed by an empty line. Solution: Do not check the line number but whether something follows. (closes #10357) --- src/ex_eval.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/ex_eval.c') diff --git a/src/ex_eval.c b/src/ex_eval.c index 9a2792a2ac..e9dbd107c8 100644 --- a/src/ex_eval.c +++ b/src/ex_eval.c @@ -940,8 +940,14 @@ ex_eval(exarg_T *eap) if (eval0(eap->arg, &tv, eap, &evalarg) == OK) { clear_tv(&tv); - if (in_vim9script() && name_only && lnum == SOURCING_LNUM) + if (in_vim9script() && name_only + && (evalarg.eval_tofree == NULL + || ends_excmd2(evalarg.eval_tofree, + skipwhite(evalarg.eval_tofree)))) + { + SOURCING_LNUM = lnum; semsg(_(e_expression_without_effect_str), eap->arg); + } } clear_evalarg(&evalarg, eap); -- cgit v1.2.3