summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2020-11-02 22:48:28 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2020-11-02 22:49:42 +0900
commit79b242260bc0530503dde85eda8e79b1c2aa9a6e (patch)
treefdc2aae41ecfd2c5f70345f7d30159974c1cfcf1
parent539b89075a61f27c8b5b5cd749f66bda47bc78b0 (diff)
ripper: Invalid pragma value warning
-rw-r--r--parse.y2
-rw-r--r--test/ripper/test_parser_events.rb6
2 files changed, 7 insertions, 1 deletions
diff --git a/parse.y b/parse.y
index eef742c9b6..4d9ca70104 100644
--- a/parse.y
+++ b/parse.y
@@ -7926,7 +7926,7 @@ parser_get_bool(struct parser_params *p, const char *name, const char *val)
}
break;
}
- rb_compile_warning(p->ruby_sourcefile, p->ruby_sourceline, "invalid value for %s: %s", name, val);
+ rb_warning2("invalid value for %s: %s", WARN_S(name), WARN_S(val));
return -1;
}
diff --git a/test/ripper/test_parser_events.rb b/test/ripper/test_parser_events.rb
index 4e1d233851..771434ff82 100644
--- a/test/ripper/test_parser_events.rb
+++ b/test/ripper/test_parser_events.rb
@@ -1588,6 +1588,12 @@ class TestRipper::ParserEvents < Test::Unit::TestCase
assert_equal("frozen_string_literal", args[0])
end
+ def test_warning_invalid_magic_comment
+ fmt, *args = warning("#-*- frozen-string-literal: nottrue -*-")
+ assert_match(/invalid value/, fmt)
+ assert_equal(%w"frozen_string_literal nottrue", args)
+ end
+
def test_warn_cr_in_middle
fmt = nil
assert_warn("") {fmt, = warn("\r;")}