From 90c27b28032ea2b42718f8933f877a8bca2821ef Mon Sep 17 00:00:00 2001 From: LemonBoy Date: Sun, 27 Aug 2023 19:28:15 +0200 Subject: [PATCH] patch 9.0.1806: Vim9: bogus error on export Problem: Vim9: bogus error on export Solution: Don't error out when the export command is not executed closes: #12912 closes: #12930 Signed-off-by: Christian Brabandt Co-authored-by: LemonBoy --- src/ex_docmd.c | 4 ++-- src/testdir/test_vim9_import.vim | 10 ++++++++++ src/version.c | 2 ++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 8fda33268..32d52ab21 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -2586,8 +2586,8 @@ do_one_cmd( #ifdef FEAT_EVAL // A command will reset "is_export" when exporting an item. If it is still - // set something went wrong. - if (is_export) + // set something went wrong or the command was never executed. + if (!ea.skip && is_export) { if (errormsg == NULL) errormsg = _(e_export_with_invalid_argument); diff --git a/src/testdir/test_vim9_import.vim b/src/testdir/test_vim9_import.vim index 7d3691a29..d470a3467 100644 --- a/src/testdir/test_vim9_import.vim +++ b/src/testdir/test_vim9_import.vim @@ -2919,5 +2919,15 @@ def Test_vim9_import_symlink() endif enddef +def Test_export_in_conditional_block() + var lines =<< trim END + vim9script + if exists('this_will_fail') + export var MyVar = "hello" + endif + END + v9.CheckScriptSuccess(lines) +enddef + " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker diff --git a/src/version.c b/src/version.c index 39cac791f..0d647ec3f 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1806, /**/ 1805, /**/