patch 8.2.3865: Vim9: compiler complains about using "try" as a struct member
Problem: Vim9: compiler complains about using "try" as a struct member.
Solution: Rename "try" to "tryref".
diff --git a/src/vim9cmds.c b/src/vim9cmds.c
index fe9ead2..6d8935a 100644
--- a/src/vim9cmds.c
+++ b/src/vim9cmds.c
@@ -1290,8 +1290,8 @@
try_scope->se_u.se_try.ts_try_label = instr->ga_len;
if ((isn = generate_instr(cctx, ISN_TRY)) == NULL)
return NULL;
- isn->isn_arg.try.try_ref = ALLOC_CLEAR_ONE(tryref_T);
- if (isn->isn_arg.try.try_ref == NULL)
+ isn->isn_arg.tryref.try_ref = ALLOC_CLEAR_ONE(tryref_T);
+ if (isn->isn_arg.tryref.try_ref == NULL)
return NULL;
}
@@ -1352,8 +1352,8 @@
// End :try or :catch scope: set value in ISN_TRY instruction
isn = ((isn_T *)instr->ga_data) + scope->se_u.se_try.ts_try_label;
- if (isn->isn_arg.try.try_ref->try_catch == 0)
- isn->isn_arg.try.try_ref->try_catch = instr->ga_len;
+ if (isn->isn_arg.tryref.try_ref->try_catch == 0)
+ isn->isn_arg.tryref.try_ref->try_catch = instr->ga_len;
if (scope->se_u.se_try.ts_catch_label != 0)
{
// Previous catch without match jumps here
@@ -1452,7 +1452,7 @@
{
// End :catch or :finally scope: set value in ISN_TRY instruction
isn = ((isn_T *)instr->ga_data) + scope->se_u.se_try.ts_try_label;
- if (isn->isn_arg.try.try_ref->try_finally != 0)
+ if (isn->isn_arg.tryref.try_ref->try_finally != 0)
{
emsg(_(e_finally_dup));
return NULL;
@@ -1479,9 +1479,9 @@
this_instr, cctx);
// If there is no :catch then an exception jumps to :finally.
- if (isn->isn_arg.try.try_ref->try_catch == 0)
- isn->isn_arg.try.try_ref->try_catch = this_instr;
- isn->isn_arg.try.try_ref->try_finally = this_instr;
+ if (isn->isn_arg.tryref.try_ref->try_catch == 0)
+ isn->isn_arg.tryref.try_ref->try_catch = this_instr;
+ isn->isn_arg.tryref.try_ref->try_finally = this_instr;
if (scope->se_u.se_try.ts_catch_label != 0)
{
// Previous catch without match jumps here
@@ -1528,8 +1528,8 @@
try_isn = ((isn_T *)instr->ga_data) + scope->se_u.se_try.ts_try_label;
if (cctx->ctx_skip != SKIP_YES)
{
- if (try_isn->isn_arg.try.try_ref->try_catch == 0
- && try_isn->isn_arg.try.try_ref->try_finally == 0)
+ if (try_isn->isn_arg.tryref.try_ref->try_catch == 0
+ && try_isn->isn_arg.tryref.try_ref->try_finally == 0)
{
emsg(_(e_missing_catch_or_finally));
return NULL;
@@ -1564,7 +1564,7 @@
{
// End :catch or :finally scope: set instruction index in ISN_TRY
// instruction
- try_isn->isn_arg.try.try_ref->try_endtry = instr->ga_len;
+ try_isn->isn_arg.tryref.try_ref->try_endtry = instr->ga_len;
if (cctx->ctx_skip != SKIP_YES
&& generate_instr(cctx, ISN_ENDTRY) == NULL)
return NULL;