From ed90ec3e0d8ff7789569b40ba36d3b3ce0e706e6 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Tue, 12 Nov 2019 09:11:16 +0900 Subject: Clear current argument name at empty block argument [Bug #16343] --- test/ruby/test_syntax.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'test/ruby/test_syntax.rb') diff --git a/test/ruby/test_syntax.rb b/test/ruby/test_syntax.rb index 5fb4dfa64f..ba479fa459 100644 --- a/test/ruby/test_syntax.rb +++ b/test/ruby/test_syntax.rb @@ -241,6 +241,16 @@ class TestSyntax < Test::Unit::TestCase o.instance_eval("def foo(var: bar {|var| var}) var end") end + o = Object.new + assert_warn("") do + o.instance_eval("def foo(var: bar {| | var}) var end") + end + + o = Object.new + assert_warn("") do + o.instance_eval("def foo(var: bar {|| var}) var end") + end + o = Object.new assert_warn("") do o.instance_eval("def foo(var: def bar(var) var; end) var end") @@ -296,6 +306,16 @@ class TestSyntax < Test::Unit::TestCase o.instance_eval("def foo(var = bar {|var| var}) var end") end + o = Object.new + assert_warn("") do + o.instance_eval("def foo(var = bar {| | var}) var end") + end + + o = Object.new + assert_warn("") do + o.instance_eval("def foo(var = bar {|| var}) var end") + end + o = Object.new assert_warn("") do o.instance_eval("def foo(var = def bar(var) var; end) var end") -- cgit v1.2.3