Make warning values consistent [Bug #17523]

They should be affected, as well as `$VERBOSE`, by `-w`/`-W`
options, not only in the main script but in scripts loaded by `-r`
option too.
This commit is contained in:
Nobuyoshi Nakada 2021-01-09 16:52:51 +09:00
parent 85b5d4c8bf
commit 6f6dfdcc68
Notes: git 2021-01-13 18:13:16 +09:00
2 changed files with 11 additions and 2 deletions

4
ruby.c
View file

@ -1510,6 +1510,8 @@ ruby_opt_init(ruby_cmdline_options_t *opt)
}
}
rb_warning_category_update(opt->warn.mask, opt->warn.set);
Init_ext(); /* load statically linked extensions before rubygems */
rb_call_builtin_inits();
ruby_init_prelude();
@ -1946,7 +1948,6 @@ process_options(int argc, char **argv, ruby_cmdline_options_t *opt)
ruby_set_script_name(progname);
rb_parser_set_options(parser, opt->do_print, opt->do_loop,
opt->do_line, opt->do_split);
rb_warning_category_update(opt->warn.mask, opt->warn.set);
ast = rb_parser_compile_string(parser, opt->script, opt->e_script, 1);
}
else {
@ -2186,7 +2187,6 @@ load_file_internal(VALUE argp_v)
}
rb_parser_set_options(parser, opt->do_print, opt->do_loop,
opt->do_line, opt->do_split);
rb_warning_category_update(opt->warn.mask, opt->warn.set);
if (NIL_P(f)) {
f = rb_str_new(0, 0);
rb_enc_associate(f, enc);