Patch 9.0.1358 (after 9.0.1357)
Problem:    Compilation error with some compilers.
Solution:   Avoid using "class" as member name.
Files:      src/vim9.h, src/vim9instr.c, src/vim9execute.c


*** ../vim-9.0.1357/src/vim9.h  2023-02-26 18:58:19.754802188 +0000
--- src/vim9.h  2023-02-27 08:04:00.178301187 +0000
***************
*** 102,108 ****
      ISN_PUSHCHANNEL,  // push NULL channel
      ISN_PUSHJOB,      // push NULL job
      ISN_PUSHOBJ,      // push NULL object
!     ISN_PUSHCLASS,    // push class, uses isn_arg.class
      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
--- 102,108 ----
      ISN_PUSHCHANNEL,  // push NULL channel
      ISN_PUSHJOB,      // push NULL job
      ISN_PUSHOBJ,      // push NULL object
!     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,526 ****
        channel_T           *channel;
        job_T               *job;
        partial_T           *partial;
!       class_T             *class;
        jump_T              jump;
        jumparg_T           jumparg;
        forloop_T           forloop;
--- 520,526 ----
        channel_T           *channel;
        job_T               *job;
        partial_T           *partial;
!       class_T             *classarg;
        jump_T              jump;
        jumparg_T           jumparg;
        forloop_T           forloop;
*** ../vim-9.0.1357/src/vim9instr.c     2023-02-26 18:58:19.754802188 +0000
--- src/vim9instr.c     2023-02-27 08:03:53.310317426 +0000
***************
*** 678,684 ****
                                  class == NULL ? &t_any : &class->class_type);
      if (isn == NULL)
        return FAIL;
!     isn->isn_arg.class = class;
      if (class != NULL)
        ++class->class_refcount;
      return OK;
--- 678,684 ----
                                  class == NULL ? &t_any : &class->class_type);
      if (isn == NULL)
        return FAIL;
!     isn->isn_arg.classarg = class;
      if (class != NULL)
        ++class->class_refcount;
      return OK;
***************
*** 2509,2515 ****
            break;
  
        case ISN_PUSHCLASS:
!           class_unref(isn->isn_arg.class);
            break;
  
        case ISN_UCALL:
--- 2509,2515 ----
            break;
  
        case ISN_PUSHCLASS:
!           class_unref(isn->isn_arg.classarg);
            break;
  
        case ISN_UCALL:
*** ../vim-9.0.1357/src/vim9execute.c   2023-02-26 18:58:19.754802188 +0000
--- src/vim9execute.c   2023-02-27 08:05:23.434109214 +0000
***************
*** 4071,4077 ****
                        break;
                    case ISN_PUSHCLASS:
                        tv->v_type = VAR_CLASS;
!                       tv->vval.v_class = iptr->isn_arg.class;
                        break;
                    default:
                        tv->v_type = VAR_STRING;
--- 4071,4077 ----
                        break;
                    case ISN_PUSHCLASS:
                        tv->v_type = VAR_CLASS;
!                       tv->vval.v_class = iptr->isn_arg.classarg;
                        break;
                    default:
                        tv->v_type = VAR_STRING;
***************
*** 6676,6683 ****
                break;
            case ISN_PUSHCLASS:
                smsg("%s%4d PUSHCLASS %s", pfx, current,
!                       iptr->isn_arg.class == NULL ? "null"
!                                   : (char *)iptr->isn_arg.class->class_name);
                break;
            case ISN_PUSHEXC:
                smsg("%s%4d PUSH v:exception", pfx, current);
--- 6676,6683 ----
                break;
            case ISN_PUSHCLASS:
                smsg("%s%4d PUSHCLASS %s", pfx, current,
!                       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);
*** ../vim-9.0.1357/src/version.c       2023-02-26 18:58:19.754802188 +0000
--- src/version.c       2023-02-27 08:06:48.697920699 +0000
***************
*** 697,698 ****
--- 697,700 ----
  {   /* Add new patch number below this line */
+ /**/
+     1358,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
186. You overstay in the office so you can have more time surfing the net.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///                                                                      \\\
\\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20230227080846.5B2461C0E92%40moolenaar.net.

Raspunde prin e-mail lui