mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* compile.c (NODE_ARGSCAT, NODE_ARGSPUSH): drop unused ARGSCAT
results when poped is true. [ruby-dev:41933], [Bug #3658] This is retry of r28870 and r28873 which were reverted. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
fa9d53d00f
commit
5ffe59faf8
3 changed files with 51 additions and 7 deletions
|
|
@ -400,4 +400,24 @@ class TestRubyPrimitive < Test::Unit::TestCase
|
|||
#assert_equal [0,1,2,3,4], [0, *a, 4]
|
||||
end
|
||||
|
||||
def test_concatarray_ruby_dev_41933
|
||||
bug3658 = '[ruby-dev:41933]'
|
||||
[0, *x=1]
|
||||
assert_equal(1, x, bug3658)
|
||||
[0, *x=1, 2]
|
||||
assert_equal(1, x, bug3658)
|
||||
class << (x = Object.new)
|
||||
attr_accessor :to_a_called
|
||||
def to_a
|
||||
@to_a_called = true
|
||||
[self]
|
||||
end
|
||||
end
|
||||
x.to_a_called = false
|
||||
[0, *x]
|
||||
assert(x.to_a_called, bug3658)
|
||||
x.to_a_called = false
|
||||
[0, *x, 2]
|
||||
assert(x.to_a_called, bug3658)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue