From f85906b67920c0e69599c6e59d843274aef152be Mon Sep 17 00:00:00 2001 From: dearblue Date: Thu, 21 May 2020 21:27:51 +0900 Subject: Remove `patch_irep()` in `mruby-eval` - It can now deal with operands in the range of `OP_EXT*`. - It can now call the same method as the variable name without arguments. ```ruby def a "Safe!" end a = "Auto!" eval "a()" # call method `a` ``` --- include/mruby/compile.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/mruby/compile.h b/include/mruby/compile.h index 5e73e66a6..7b878d460 100644 --- a/include/mruby/compile.h +++ b/include/mruby/compile.h @@ -33,7 +33,7 @@ typedef struct mrbc_context { mrb_bool no_exec:1; mrb_bool keep_lv:1; mrb_bool no_optimize:1; - mrb_bool on_eval:1; + struct RProc *upper; size_t parser_nerr; } mrbc_context; @@ -151,8 +151,8 @@ struct mrb_parser_state { mrb_ast_node *tree; mrb_bool no_optimize:1; - mrb_bool on_eval:1; mrb_bool capture_errors:1; + struct RProc *upper; struct mrb_parser_message error_buffer[10]; struct mrb_parser_message warn_buffer[10]; -- cgit v1.2.3