summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErnie Rael <errael@raelity.com>2023-09-05 07:38:09 +0200
committerChristian Brabandt <cb@256bit.org>2023-09-05 07:39:14 +0200
commit00df69e62b2233d758f8c988794d66d53e887260 (patch)
tree757598fb43a7edea33f6d0c0690aed48d9d75a03
parentc2a37013bd3c748e0e4adcbb5a505b8a4dde20c7 (diff)
patch 9.0.1870: Vim9: disassamble does not show staticv9.0.1870
Problem: Vim9: disassamble does not show static Solution: Show static flag Fix disassemble for instructions with optional static: ISN_GET_OBJ_MEMBER and ISN_GET_ITF_MEMBER closes: #13030 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ernie Rael <errael@raelity.com>
-rw-r--r--src/version.c2
-rw-r--r--src/vim9execute.c13
2 files changed, 11 insertions, 4 deletions
diff --git a/src/version.c b/src/version.c
index 0010dd5cf9..7fb2653624 100644
--- a/src/version.c
+++ b/src/version.c
@@ -700,6 +700,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1870,
+/**/
1869,
/**/
1868,
diff --git a/src/vim9execute.c b/src/vim9execute.c
index c98370eefb..4a1dd1ce20 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -7156,12 +7156,17 @@ list_instructions(char *pfx, isn_T *instr, int instr_count, ufunc_T *ufunc)
case ISN_MEMBER: smsg("%s%4d MEMBER", pfx, current); break;
case ISN_STRINGMEMBER: smsg("%s%4d MEMBER %s", pfx, current,
iptr->isn_arg.string); break;
- case ISN_GET_OBJ_MEMBER: smsg("%s%4d OBJ_MEMBER %d", pfx, current,
- (int)iptr->isn_arg.number); break;
- case ISN_GET_ITF_MEMBER: smsg("%s%4d ITF_MEMBER %d on %s",
+ case ISN_GET_OBJ_MEMBER: smsg("%s%4d OBJ_MEMBER %d%s", pfx, current,
+ (int)iptr->isn_arg.classmember.cm_idx,
+ iptr->isn_arg.classmember.cm_static
+ ? " [STATIC]" : "");
+ break;
+ case ISN_GET_ITF_MEMBER: smsg("%s%4d ITF_MEMBER %d on %s%s",
pfx, current,
(int)iptr->isn_arg.classmember.cm_idx,
- iptr->isn_arg.classmember.cm_class->class_name);
+ iptr->isn_arg.classmember.cm_class->class_name,
+ iptr->isn_arg.classmember.cm_static
+ ? " [STATIC]" : "");
break;
case ISN_STORE_THIS: smsg("%s%4d STORE_THIS %d", pfx, current,
(int)iptr->isn_arg.number); break;