From c58164c5cff9845f3bf7cfcd75ace43208829388 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 29 Mar 2020 18:40:30 +0200 Subject: patch 8.2.0477: Vim9: error messages not tested Problem: Vim9: error messages not tested. Solution: Add more tests. --- src/vim9execute.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'src/vim9execute.c') diff --git a/src/vim9execute.c b/src/vim9execute.c index 5f6f79a15..4846c5521 100644 --- a/src/vim9execute.c +++ b/src/vim9execute.c @@ -1612,7 +1612,21 @@ call_def_function( case ISN_NEGATENR: tv = STACK_TV_BOT(-1); - tv->vval.v_number = -tv->vval.v_number; + if (tv->v_type != VAR_NUMBER +#ifdef FEAT_FLOAT + && tv->v_type != VAR_FLOAT +#endif + ) + { + emsg(_(e_number_exp)); + goto failed; + } +#ifdef FEAT_FLOAT + if (tv->v_type == VAR_FLOAT) + tv->vval.v_float = -tv->vval.v_float; + else +#endif + tv->vval.v_number = -tv->vval.v_number; break; case ISN_CHECKNR: -- cgit v1.2.1