summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--re.c2
-rw-r--r--test/ruby/test_regexp.rb2
2 files changed, 3 insertions, 1 deletions
diff --git a/re.c b/re.c
index 8666e449ec..a4cd2e39b9 100644
--- a/re.c
+++ b/re.c
@@ -3557,7 +3557,7 @@ rb_reg_initialize_m(int argc, VALUE *argv, VALUE self)
if (RB_TYPE_P(src, T_REGEXP)) {
VALUE re = src;
- if (opts != Qundef) {
+ if (opts != Qnil) {
rb_warn("flags ignored");
}
rb_reg_check(re);
diff --git a/test/ruby/test_regexp.rb b/test/ruby/test_regexp.rb
index fb989c74fa..7f787f99f5 100644
--- a/test/ruby/test_regexp.rb
+++ b/test/ruby/test_regexp.rb
@@ -557,6 +557,8 @@ class TestRegexp < Test::Unit::TestCase
def test_initialize
assert_raise(ArgumentError) { Regexp.new }
assert_equal(/foo/, assert_warning(/ignored/) {Regexp.new(/foo/, Regexp::IGNORECASE)})
+ assert_equal(/foo/, assert_no_warning(/ignored/) {Regexp.new(/foo/)})
+ assert_equal(/foo/, assert_no_warning(/ignored/) {Regexp.new(/foo/, timeout: nil)})
assert_equal(Encoding.find("US-ASCII"), Regexp.new("b..", nil, "n").encoding)
assert_equal("bar", "foobarbaz"[Regexp.new("b..", nil, "n")])