From 002262f4dee452964190b0d022aa7443f602b288 Mon Sep 17 00:00:00 2001
From: Bram Moolenaar <Bram@vim.org>
Date: Wed, 8 Jul 2020 17:47:57 +0200
Subject: [PATCH] patch 8.2.1156: Vim9: No error for invalid command in
 compiled function

Problem:    Vim9: No error for invalid command in compiled function.
Solution:   Handle CMD_SIZE.
---
 src/testdir/test_vim9_expr.vim | 2 +-
 src/version.c                  | 2 ++
 src/vim9compile.c              | 4 ++++
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index b3906c1b98..dd2a8ade51 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -1420,7 +1420,7 @@ func Test_expr_fails()
   call CheckDefFailure(["let x = '1'is2"], 'E488:')
   call CheckDefFailure(["let x = '1'isnot2"], 'E488:')
 
-  call CheckDefExecFailure(["CallMe ('yes')"], 'E492:')
+  call CheckDefFailure(["CallMe ('yes')"], 'E476:')
   call CheckDefFailure(["CallMe2('yes','no')"], 'E1069:')
   call CheckDefFailure(["CallMe2('yes' , 'no')"], 'E1068:')
 
diff --git a/src/version.c b/src/version.c
index c77d0bc7cd..e362e27057 100644
--- a/src/version.c
+++ b/src/version.c
@@ -754,6 +754,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1156,
 /**/
     1155,
 /**/
diff --git a/src/vim9compile.c b/src/vim9compile.c
index c3c380852a..07aacb37c0 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -7142,6 +7142,10 @@ compile_def_function(ufunc_T *ufunc, int set_return_type, cctx_T *outer_cctx)
 
 	    // TODO: other commands with an expression argument
 
+	    case CMD_SIZE:
+		    semsg(_("E476: Invalid command: %s"), ea.cmd);
+		    goto erret;
+
 	    default:
 		    // Not recognized, execute with do_cmdline_cmd().
 		    ea.arg = p;
-- 
GitLab