Bug #2401

Array splat bug: a=[1,2]; p [*a] #=> []

Added by knu (Akinori MUSHA) over 2 years ago. Updated about 1 year ago.

[ruby-dev:39771]
Status:Closed Start date:11/25/2009
Priority:High Due date:
Assignee:nobu (Nobuyoshi Nakada) % Done:

100%

Category:core
Target version:Ruby 1.8.8
ruby -v:ruby 1.8.8dev (2009-11-24 revision 25903) [x86_64-freebsd7]

Description

a=[1,2]; p [*a] #=> []
となってしまいます。

parse.yを見たんですが、argsとargs2の使い分けがよく分かりません。
(r25658の前は同じだったように見えます)

when_argsを復活させるのが近道なんですかねえ。

なお、もちろんtest-allは必要ですが、
test/ruby/test_array.rb
test/ruby/test_case.rb
test/ruby/test_assignment.rb
あたりで基本的なチェックはできます。

Associated revisions

Revision 26160
Added by nobu over 2 years ago

* parse.y (args): splat other than direct array literal. [ruby-dev:39771]

History

Updated by shyouhei (Shyouhei Urabe) over 2 years ago

  • Status changed from Open to Assigned
  • Assignee set to nobu (Nobuyoshi Nakada)

Updated by nobu (Nobuyoshi Nakada) over 2 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100
This issue was solved with changeset r26160.
Akinori, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.

Also available in: Atom PDF