changeset 33181:ea3f1e0ee5f3 v9.0.1870

patch 9.0.1870: Vim9: disassamble does not show static Commit: https://github.com/vim/vim/commit/00df69e62b2233d758f8c988794d66d53e887260 Author: Ernie Rael <errael@raelity.com> Date: Tue Sep 5 07:38:09 2023 +0200 patch 9.0.1870: Vim9: disassamble does not show static 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>
author Christian Brabandt <cb@256bit.org>
date Tue, 05 Sep 2023 07:45:08 +0200
parents 21bbe5d23739
children ab047eb6d559
files src/version.c src/vim9execute.c
diffstat 2 files changed, 11 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- 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,
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -7156,12 +7156,17 @@ list_instructions(char *pfx, isn_T *inst
 	    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;