* re.c (rb_reg_to_s): needs embedded options to check syntax of
  sub-regexp.  [ruby-core:82328] [Bug #13798]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2017-08-11 02:05:24 +00:00
Родитель 890ae326e5
Коммит d96eba12c2
2 изменённых файлов: 7 добавлений и 1 удалений

2
re.c
Просмотреть файл

@ -606,7 +606,7 @@ rb_reg_to_s(VALUE re)
++ptr; ++ptr;
len -= 2; len -= 2;
err = onig_new(&rp, ptr, ptr + len, ONIG_OPTION_DEFAULT, err = onig_new(&rp, ptr, ptr + len, options,
enc, OnigDefaultSyntax, NULL); enc, OnigDefaultSyntax, NULL);
onig_free(rp); onig_free(rp);
ruby_verbose = verbose; ruby_verbose = verbose;

Просмотреть файл

@ -74,6 +74,12 @@ class TestRegexp < Test::Unit::TestCase
end end
end end
def test_to_s_extended_subexp
re = /#\g#{"\n"}/x
re = /#{re}/
assert_warn('', '[ruby-core:82328] [Bug #13798]') {re.to_s}
end
def test_union def test_union
assert_equal :ok, begin assert_equal :ok, begin
Regexp.union( Regexp.union(