changeset 32053:76fd08a4ae1d v9.0.1358

patch 9.0.1358: compilation error with some compilers Commit: https://github.com/vim/vim/commit/30a844771554d28f1a88a256e6088dbb252228c1 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Feb 27 08:07:14 2023 +0000 patch 9.0.1358: compilation error with some compilers Problem: Compilation error with some compilers. Solution: Avoid using "class" as member name.
author Bram Moolenaar <Bram@vim.org>
date Mon, 27 Feb 2023 09:15:04 +0100
parents e9b5d9ebeb1f
children 2cfcf99476ff
files src/version.c src/vim9.h src/vim9execute.c src/vim9instr.c
diffstat 4 files changed, 9 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1358,
+/**/
     1357,
 /**/
     1356,
--- a/src/vim9.h
+++ b/src/vim9.h
@@ -102,7 +102,7 @@ typedef enum {
     ISN_PUSHCHANNEL,	// push NULL channel
     ISN_PUSHJOB,	// push NULL job
     ISN_PUSHOBJ,	// push NULL object
-    ISN_PUSHCLASS,	// push class, uses isn_arg.class
+    ISN_PUSHCLASS,	// push class, uses isn_arg.classarg
     ISN_NEWLIST,	// push list from stack items, size is isn_arg.number
 			// -1 for null_list
     ISN_NEWDICT,	// push dict from stack items, size is isn_arg.number
@@ -520,7 +520,7 @@ struct isn_S {
 	channel_T	    *channel;
 	job_T		    *job;
 	partial_T	    *partial;
-	class_T		    *class;
+	class_T		    *classarg;
 	jump_T		    jump;
 	jumparg_T	    jumparg;
 	forloop_T	    forloop;
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -4071,7 +4071,7 @@ exec_instructions(ectx_T *ectx)
 			break;
 		    case ISN_PUSHCLASS:
 			tv->v_type = VAR_CLASS;
-			tv->vval.v_class = iptr->isn_arg.class;
+			tv->vval.v_class = iptr->isn_arg.classarg;
 			break;
 		    default:
 			tv->v_type = VAR_STRING;
@@ -6676,8 +6676,8 @@ list_instructions(char *pfx, isn_T *inst
 		break;
 	    case ISN_PUSHCLASS:
 		smsg("%s%4d PUSHCLASS %s", pfx, current,
-			iptr->isn_arg.class == NULL ? "null"
-				    : (char *)iptr->isn_arg.class->class_name);
+			iptr->isn_arg.classarg == NULL ? "null"
+				 : (char *)iptr->isn_arg.classarg->class_name);
 		break;
 	    case ISN_PUSHEXC:
 		smsg("%s%4d PUSH v:exception", pfx, current);
--- a/src/vim9instr.c
+++ b/src/vim9instr.c
@@ -678,7 +678,7 @@ generate_PUSHCLASS(cctx_T *cctx, class_T
 				  class == NULL ? &t_any : &class->class_type);
     if (isn == NULL)
 	return FAIL;
-    isn->isn_arg.class = class;
+    isn->isn_arg.classarg = class;
     if (class != NULL)
 	++class->class_refcount;
     return OK;
@@ -2509,7 +2509,7 @@ delete_instr(isn_T *isn)
 	    break;
 
 	case ISN_PUSHCLASS:
-	    class_unref(isn->isn_arg.class);
+	    class_unref(isn->isn_arg.classarg);
 	    break;
 
 	case ISN_UCALL: