diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim index 53d964fa8b..d7c01aae97 100644 --- a/src/testdir/test_vim9_cmd.vim +++ b/src/testdir/test_vim9_cmd.vim @@ -216,6 +216,13 @@ def Test_bar_after_command() RedrawAndEcho() assert_match('did redraw', Screenline(&lines)) + def CallAndEcho() + let x = 'did redraw' + reg_executing() | echo x + enddef + CallAndEcho() + assert_match('did redraw', Screenline(&lines)) + if has('unix') # bar in filter write command does not start new command def WriteToShell() diff --git a/src/version.c b/src/version.c index d079d29096..c94988faf0 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 */ +/**/ + 1130, /**/ 1129, /**/ diff --git a/src/vim9compile.c b/src/vim9compile.c index 5c3d08d30f..b4209a1fee 100644 --- a/src/vim9compile.c +++ b/src/vim9compile.c @@ -6985,7 +6985,8 @@ compile_def_function(ufunc_T *ufunc, int set_return_type, cctx_T *outer_cctx) // drop the return value generate_instr_drop(&cctx, ISN_DROP, 1); - line = p; + + line = skipwhite(p); continue; } // CMD_let cannot happen, compile_assignment() above is used