changeset 27575:9f70df0b2967 v8.2.4314

patch 8.2.4314: test fails where lines are skipped Commit: https://github.com/vim/vim/commit/8cbf2499179db39a46e700ab04d0b36e22bcc1bb Author: Bram Moolenaar <Bram@vim.org> Date: Sun Feb 6 20:28:13 2022 +0000 patch 8.2.4314: test fails where lines are skipped Problem: Test fails where lines are skipped. Solution: Only give an error when not skipping commands.
author Bram Moolenaar <Bram@vim.org>
date Sun, 06 Feb 2022 21:30:02 +0100
parents e436b6c8fe11
children 55ea029fa9cd
files src/testdir/test_vim9_script.vim src/version.c src/vim9compile.c
diffstat 3 files changed, 14 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -1228,6 +1228,11 @@ def Test_vim9script_fails()
 
   assert_fails('vim9script', 'E1038:')
   v9.CheckDefFailure(['vim9script'], 'E1038:')
+
+  # no error when skipping
+  if has('nothing')
+    vim9script
+  endif
 enddef
 
 def Test_script_var_shadows_function()
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4314,
+/**/
     4313,
 /**/
     4312,
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -3139,8 +3139,13 @@ compile_def_function(
 		    break;
 
 	    case CMD_vim9script:
-		    emsg(_(e_vim9script_can_only_be_used_in_script));
-		    goto erret;
+		    if (cctx.ctx_skip != SKIP_YES)
+		    {
+			emsg(_(e_vim9script_can_only_be_used_in_script));
+			goto erret;
+		    }
+		    line = (char_u *)"";
+		    break;
 
 	    case CMD_global:
 		    if (check_global_and_subst(ea.cmd, p) == FAIL)