mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
merge revision(s) 6f6dfdcc68
: [Backport #17523]
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. --- ruby.c | 4 ++-- test/ruby/test_rubyoptions.rb | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-)
This commit is contained in:
parent
69d01653f8
commit
14823c2d7c
3 changed files with 13 additions and 3 deletions
5
ruby.c
5
ruby.c
|
@ -1771,6 +1771,9 @@ process_options(int argc, char **argv, ruby_cmdline_options_t *opt)
|
|||
rb_ary_replace(vm->load_path_snapshot, load_path);
|
||||
}
|
||||
}
|
||||
|
||||
rb_warning_category_update(opt->warn.mask, opt->warn.set);
|
||||
|
||||
Init_ext(); /* load statically linked extensions before rubygems */
|
||||
if (opt->features.set & FEATURE_BIT(gems)) {
|
||||
rb_define_module("Gem");
|
||||
|
@ -1819,7 +1822,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 {
|
||||
|
@ -2058,7 +2060,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);
|
||||
|
|
|
@ -83,6 +83,15 @@ class TestRubyOptions < Test::Unit::TestCase
|
|||
assert_in_out_err(%w(-w -e) + ['p Warning[:deprecated]'], "", %w(true), [])
|
||||
assert_in_out_err(%w(-W -e) + ['p Warning[:deprecated]'], "", %w(true), [])
|
||||
assert_in_out_err(%w(-e) + ['p Warning[:deprecated]'], "", %w(false), [])
|
||||
code = 'puts "#{$VERBOSE}:#{Warning[:deprecated]}:#{Warning[:experimental]}"'
|
||||
Tempfile.create(["test_ruby_test_rubyoption", ".rb"]) do |t|
|
||||
t.puts code
|
||||
t.close
|
||||
assert_in_out_err(["-r#{t.path}", '-e', code], "", %w(false:false:true false:false:true), [])
|
||||
assert_in_out_err(["-r#{t.path}", '-w', '-e', code], "", %w(true:true:true true:true:true), [])
|
||||
assert_in_out_err(["-r#{t.path}", '-W:deprecated', '-e', code], "", %w(false:true:true false:true:true), [])
|
||||
assert_in_out_err(["-r#{t.path}", '-W:no-experimental', '-e', code], "", %w(false:false:false false:false:false), [])
|
||||
end
|
||||
ensure
|
||||
ENV['RUBYOPT'] = save_rubyopt
|
||||
end
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# define RUBY_VERSION_MINOR RUBY_API_VERSION_MINOR
|
||||
#define RUBY_VERSION_TEENY 3
|
||||
#define RUBY_RELEASE_DATE RUBY_RELEASE_YEAR_STR"-"RUBY_RELEASE_MONTH_STR"-"RUBY_RELEASE_DAY_STR
|
||||
#define RUBY_PATCHLEVEL 156
|
||||
#define RUBY_PATCHLEVEL 157
|
||||
|
||||
#define RUBY_RELEASE_YEAR 2021
|
||||
#define RUBY_RELEASE_MONTH 2
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue