0
0
mirror of https://github.com/vim/vim.git synced 2025-10-22 08:34:29 -04:00

patch 9.1.1146: Vim9: wrong context being used when evaluating class member

Problem:  Vim9: wrong context being used when evaluating class member
          (lifepillar, Ernie Rael)
Solution: Use the correct script context when evaluating a class member
          init expression(Yegappan Lakshmanan)

fixes: #14011
fixes: #14402
closes: #15112
closes: #16660

Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Yegappan Lakshmanan
2025-02-24 19:23:43 +01:00
committed by Christian Brabandt
parent 5090a1fecb
commit 16f2d3a465
13 changed files with 197 additions and 55 deletions

View File

@@ -219,6 +219,8 @@ typedef enum {
ISN_CEXPR_AUCMD, // first part of :cexpr isn_arg.number is cmdidx
ISN_CEXPR_CORE, // second part of :cexpr, uses isn_arg.cexpr
ISN_SCRIPTCTX_SET, // set script context for expression evaluation
ISN_FINISH // end marker in list of instructions
} isntype_T;
@@ -570,6 +572,7 @@ struct isn_S {
classmember_T classmember;
storeindex_T storeindex;
lockunlock_T lockunlock;
sctx_T setsctx;
} isn_arg;
};