From c336ae3ce60a2f047b72344ac827568606c5aa15 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 18 Dec 2022 22:01:42 +0000 Subject: [PATCH] patch 9.0.1075: build fails if compiler doesn't allow declaration after case Problem: build fails if the compiler doesn't allow for a declaration right after "case". Solution: Add a block. --- src/version.c | 2 ++ src/vim9instr.c | 39 +++++++++++++++++++++------------------ 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/src/version.c b/src/version.c index 0c7c50f99..a734f555d 100644 --- a/src/version.c +++ b/src/version.c @@ -695,6 +695,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1075, /**/ 1074, /**/ diff --git a/src/vim9instr.c b/src/vim9instr.c index 8bd2485f6..4a22d1829 100644 --- a/src/vim9instr.c +++ b/src/vim9instr.c @@ -2188,29 +2188,32 @@ generate_store_var( case dest_vimvar: return generate_STORE(cctx, ISN_STOREV, vimvaridx, NULL); case dest_script: - int scriptvar_idx = lhs->lhs_scriptvar_idx; - int scriptvar_sid = lhs->lhs_scriptvar_sid; - if (scriptvar_idx < 0) { - isntype_T isn_type = ISN_STORES; + int scriptvar_idx = lhs->lhs_scriptvar_idx; + int scriptvar_sid = lhs->lhs_scriptvar_sid; + if (scriptvar_idx < 0) + { + isntype_T isn_type = ISN_STORES; - if (SCRIPT_ID_VALID(scriptvar_sid) - && SCRIPT_ITEM(scriptvar_sid)->sn_import_autoload - && SCRIPT_ITEM(scriptvar_sid)->sn_autoload_prefix + if (SCRIPT_ID_VALID(scriptvar_sid) + && SCRIPT_ITEM(scriptvar_sid)->sn_import_autoload + && SCRIPT_ITEM(scriptvar_sid)->sn_autoload_prefix == NULL) - { - // "import autoload './dir/script.vim'" - load script first - if (generate_SOURCE(cctx, scriptvar_sid) == FAIL) - return FAIL; - isn_type = ISN_STOREEXPORT; - } + { + // "import autoload './dir/script.vim'" - load script + // first + if (generate_SOURCE(cctx, scriptvar_sid) == FAIL) + return FAIL; + isn_type = ISN_STOREEXPORT; + } - // "s:" may be included in the name. - return generate_OLDSCRIPT(cctx, isn_type, name, - scriptvar_sid, type); - } - return generate_VIM9SCRIPT(cctx, ISN_STORESCRIPT, + // "s:" may be included in the name. + return generate_OLDSCRIPT(cctx, isn_type, name, + scriptvar_sid, type); + } + return generate_VIM9SCRIPT(cctx, ISN_STORESCRIPT, scriptvar_sid, scriptvar_idx, type); + } case dest_class_member: return generate_CLASSMEMBER(cctx, FALSE, lhs->lhs_class, lhs->lhs_classmember_idx); -- 2.40.0