mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* parse.y (block_call): rules for block_call after block_call.
based on a patch by pasberth https://github.com/ruby/ruby/pull/102 [ruby-dev:45308][Bug #6115] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
45f3651d1c
commit
c46bdadb84
3 changed files with 44 additions and 0 deletions
|
@ -63,6 +63,20 @@ class TestSyntax < Test::Unit::TestCase
|
|||
end
|
||||
end
|
||||
|
||||
tap do |_,
|
||||
bug6115 = '[ruby-dev:45308]',
|
||||
blockcall = '["elem"].each_with_object [] do end',
|
||||
methods = [['map', 'no'], ['inject([])', 'with']],
|
||||
blocks = [['do end', 'do'], ['{}', 'brace']],
|
||||
*|
|
||||
[%w'. dot', %w':: colon'].product(methods, blocks) do |(c, n1), (m, n2), (b, n3)|
|
||||
m = m.tr_s('()', ' ').strip if n2 == 'do'
|
||||
name = "test_#{n3}_block_after_blockcall_#{n1}_#{n2}_arg"
|
||||
code = "#{blockcall}#{c}#{m} #{b}"
|
||||
define_method(name) {assert_valid_syntax(code, bug6115)}
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def make_tmpsrc(f, src)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue