From b7d63cbb85e028ab919fa581aee2a748a5f994ab Mon Sep 17 00:00:00 2001 From: naruse Date: Thu, 5 Nov 2009 03:11:27 +0000 Subject: [PATCH] * parse.y (args): use splat_array. fix: when *foo doesn't splat. [ruby-list:46517] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@25658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ parse.y | 2 +- test/ruby/test_case.rb | 7 +++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index d2cfd04d9e..8574f3e75f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 5 12:06:35 2009 NARUSE, Yui + + * parse.y (args): use splat_array. + fix: when *foo doesn't splat. [ruby-list:46517] + Thu Nov 5 11:31:23 2009 NAKAMURA Usaku * win32/win32.c (CreateChild): allocate temporary buffer and use it diff --git a/parse.y b/parse.y index 5a8106837b..f0ef937206 100644 --- a/parse.y +++ b/parse.y @@ -1455,7 +1455,7 @@ args : arg_value | tSTAR arg_value { /*%%%*/ - $$ = NEW_TO_ARY($2); + $$ = splat_array($2); /*% $$ = arg_add_star(arg_new(), $2); %*/ diff --git a/test/ruby/test_case.rb b/test/ruby/test_case.rb index 41a22038a0..af925d1ac8 100644 --- a/test/ruby/test_case.rb +++ b/test/ruby/test_case.rb @@ -45,5 +45,12 @@ class TestCase < Test::Unit::TestCase else assert(false) end + + case "+" + when *%w/. +/ + assert(true) + else + assert(false) + end end end