From: Bram Moolenaar Date: Sun, 6 Feb 2022 17:30:41 +0000 (+0000) Subject: patch 8.2.4312: no error for using :vim9script in a :def function X-Git-Tag: v8.2.4312 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=107f7325f615a1ffa5b49521e316b44e117b0a04;p=thirdparty%2Fvim.git patch 8.2.4312: no error for using :vim9script in a :def function Problem: No error for using :vim9script in a :def function. Solution: Give an error when compiling. --- diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim index 28dd78b0e6..4fa71d94de 100644 --- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -1227,6 +1227,7 @@ def Test_vim9script_fails() v9.CheckScriptFailure(['vim9script', 'const str = "asdf"', 'str = "xxx"'], 'E46:') assert_fails('vim9script', 'E1038:') + v9.CheckDefFailure(['vim9script'], 'E1038:') enddef def Test_script_var_shadows_function() diff --git a/src/version.c b/src/version.c index 2342462a0f..825f12da3d 100644 --- a/src/version.c +++ b/src/version.c @@ -746,6 +746,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 4312, /**/ 4311, /**/ diff --git a/src/vim9compile.c b/src/vim9compile.c index 9dbd1198dd..0bf47e24d9 100644 --- a/src/vim9compile.c +++ b/src/vim9compile.c @@ -3138,6 +3138,10 @@ compile_def_function( line = compile_script(line, &cctx); break; + case CMD_vim9script: + emsg(_(e_vim9script_can_only_be_used_in_script)); + goto erret; + case CMD_global: if (check_global_and_subst(ea.cmd, p) == FAIL) goto erret;