summaryrefslogtreecommitdiff
path: root/test/ruby/test_syntax.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/ruby/test_syntax.rb')
-rw-r--r--test/ruby/test_syntax.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/ruby/test_syntax.rb b/test/ruby/test_syntax.rb
index b026c21a4c..7c754316ff 100644
--- a/test/ruby/test_syntax.rb
+++ b/test/ruby/test_syntax.rb
@@ -844,6 +844,10 @@ eom
assert_valid_syntax %q{a b(c d), :e do end}, bug11873
assert_valid_syntax %q{a b{c(d)}, :e do end}, bug11873
assert_valid_syntax %q{a b(c(d)), :e do end}, bug11873
+ assert_valid_syntax %q{a b{c d}, 1 do end}, bug11873
+ assert_valid_syntax %q{a b(c d), 1 do end}, bug11873
+ assert_valid_syntax %q{a b{c(d)}, 1 do end}, bug11873
+ assert_valid_syntax %q{a b(c(d)), 1 do end}, bug11873
end
def test_block_after_cmdarg_in_paren
@@ -867,6 +871,15 @@ eom
end
end
+ def test_do_after_local_variable
+ obj = Object.new
+ def obj.m; yield; end
+ result = assert_nothing_raised(SyntaxError) do
+ obj.instance_eval("m = 1; m do :ok end")
+ end
+ assert_equal(:ok, result)
+ end
+
private
def not_label(x) @result = x; @not_label ||= nil end