From 25d9370f97d204524a200594faa2bb0adee0e23a Mon Sep 17 00:00:00 2001 From: dearblue Date: Sun, 19 Jan 2020 21:48:15 +0900 Subject: Fix take over file scope variable names with `mirb` command Ref #4931 With this change, the `_` variable is defined after the `-r` switch. --- mrbgems/mruby-bin-mirb/tools/mirb/mirb.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c b/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c index ac6276dc2..e54a520f3 100644 --- a/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +++ b/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c @@ -491,10 +491,6 @@ main(int argc, char **argv) cxt = mrbc_context_new(mrb); -#ifndef DISABLE_MIRB_UNDERSCORE - decl_lv_underscore(mrb, cxt); -#endif - /* Load libraries */ for (i = 0; i < args.libc; i++) { FILE *lfp = fopen(args.libv[i], "r"); @@ -505,8 +501,13 @@ main(int argc, char **argv) } mrb_load_file_cxt(mrb, lfp, cxt); fclose(lfp); + mrbc_cleanup_local_variables(mrb, cxt); } +#ifndef DISABLE_MIRB_UNDERSCORE + decl_lv_underscore(mrb, cxt); +#endif + cxt->capture_errors = TRUE; cxt->lineno = 1; mrbc_filename(mrb, cxt, "(mirb)"); -- cgit v1.2.3