From 9a680d11ef22514bc82c36f186e4e9f230cae87f Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Tue, 16 Sep 2025 15:08:40 +0900 Subject: [PATCH] mruby-compiler: rename operator field to op for c++ compatibility Rename mrb_ast_op_asgn_node.operator field to op to avoid conflict with C++ operator keyword. Update all references including macro definitions and field access code. Co-authored-by: Claude --- mrbgems/mruby-compiler/core/codegen.c | 2 +- mrbgems/mruby-compiler/core/node.h | 4 ++-- mrbgems/mruby-compiler/core/parse.y | 2 +- mrbgems/mruby-compiler/core/y.tab.c | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c index 26e10fe8c..7214c7053 100644 --- a/mrbgems/mruby-compiler/core/codegen.c +++ b/mrbgems/mruby-compiler/core/codegen.c @@ -4533,7 +4533,7 @@ gen_op_asgn_var(codegen_scope *s, node *varnode, int val) struct mrb_ast_op_asgn_node *op_asgn_n = op_asgn_node(varnode); node *lhs = op_asgn_n->lhs; node *rhs = op_asgn_n->rhs; - mrb_sym sym = op_asgn_n->operator; + mrb_sym sym = op_asgn_n->op; mrb_int len; const char *name = mrb_sym_name_len(s->mrb, sym, &len); int vsp = -1; diff --git a/mrbgems/mruby-compiler/core/node.h b/mrbgems/mruby-compiler/core/node.h index 025aec0b3..011295f01 100644 --- a/mrbgems/mruby-compiler/core/node.h +++ b/mrbgems/mruby-compiler/core/node.h @@ -337,7 +337,7 @@ struct mrb_ast_masgn_node { struct mrb_ast_op_asgn_node { struct mrb_ast_var_header header; /* 8 bytes */ struct mrb_ast_node *lhs; /* Left-hand side (target) */ - mrb_sym operator; /* Assignment operator (e.g., +=, -=, etc.) */ + mrb_sym op; /* Assignment operator (e.g., +=, -=, etc.) */ struct mrb_ast_node *rhs; /* Right-hand side (value) */ }; @@ -495,7 +495,7 @@ struct mrb_ast_super_node { #define MASGN_NODE_RHS(n) (masgn_node(n)->rhs) #define OP_ASGN_NODE_LHS(n) (op_asgn_node(n)->lhs) -#define OP_ASGN_NODE_OP(n) (op_asgn_node(n)->operator) +#define OP_ASGN_NODE_OP(n) (op_asgn_node(n)->op) #define OP_ASGN_NODE_RHS(n) (op_asgn_node(n)->rhs) /* Expression node value access macros */ diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y index afe5d4055..d895eeeb4 100644 --- a/mrbgems/mruby-compiler/core/parse.y +++ b/mrbgems/mruby-compiler/core/parse.y @@ -1574,7 +1574,7 @@ new_op_asgn(parser_state *p, node *a, mrb_sym op, node *b) struct mrb_ast_op_asgn_node *n = (struct mrb_ast_op_asgn_node*)parser_alloc_var(p, total_size, class); init_var_header(&n->header, p, NODE_OP_ASGN, class); n->lhs = a; - n->operator = op; + n->op = op; n->rhs = b; return cons_head((node*)NODE_VARIABLE, (node*)n); } diff --git a/mrbgems/mruby-compiler/core/y.tab.c b/mrbgems/mruby-compiler/core/y.tab.c index 6e9ee583e..99fa7f525 100644 --- a/mrbgems/mruby-compiler/core/y.tab.c +++ b/mrbgems/mruby-compiler/core/y.tab.c @@ -1636,7 +1636,7 @@ new_op_asgn(parser_state *p, node *a, mrb_sym op, node *b) struct mrb_ast_op_asgn_node *n = (struct mrb_ast_op_asgn_node*)parser_alloc_var(p, total_size, class); init_var_header(&n->header, p, NODE_OP_ASGN, class); n->lhs = a; - n->operator = op; + n->op = op; n->rhs = b; return cons_head((node*)NODE_VARIABLE, (node*)n); }