ruby-changes:18773
From: nobu <ko1@a...>
Date: Sat, 5 Feb 2011 21:47:38 +0900 (JST)
Subject: [ruby-changes:18773] Ruby:r30799 (trunk): * parse.y (mlhs_basic): include mlhs_post for ripper. a patch
nobu 2011-02-05 21:47:16 +0900 (Sat, 05 Feb 2011) New Revision: 30799 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=30799 Log: * parse.y (mlhs_basic): include mlhs_post for ripper. a patch from Michael Edgar at [ruby-core:35078]. Modified files: trunk/ChangeLog trunk/parse.y trunk/test/ripper/test_parser_events.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 30798) +++ ChangeLog (revision 30799) @@ -1,3 +1,8 @@ +Sat Feb 5 21:47:09 2011 Nobuyoshi Nakada <nobu@r...> + + * parse.y (mlhs_basic): include mlhs_post for ripper. a patch + from Michael Edgar at [ruby-core:35078]. + Sat Feb 5 21:22:21 2011 Nobuyoshi Nakada <nobu@r...> * lib/test/unit/assertions.rb (assert_block): move from Index: parse.y =================================================================== --- parse.y (revision 30798) +++ parse.y (revision 30799) @@ -1518,7 +1518,8 @@ /*%%%*/ $$ = NEW_MASGN($1, NEW_POSTARG(-1, $4)); /*% - $$ = mlhs_add_star($1, Qnil); + $1 = mlhs_add_star($1, Qnil); + $$ = mlhs_add($1, $4); %*/ } | tSTAR mlhs_node @@ -1534,7 +1535,8 @@ /*%%%*/ $$ = NEW_MASGN(0, NEW_POSTARG($2,$4)); /*% - $$ = mlhs_add_star(mlhs_new(), $2); + $2 = mlhs_add_star(mlhs_new(), $2); + $$ = mlhs_add($2, $4); %*/ } | tSTAR @@ -1551,6 +1553,7 @@ $$ = NEW_MASGN(0, NEW_POSTARG(-1, $3)); /*% $$ = mlhs_add_star(mlhs_new(), Qnil); + $$ = mlhs_add($$, $3); %*/ } ; Index: test/ripper/test_parser_events.rb =================================================================== --- test/ripper/test_parser_events.rb (revision 30798) +++ test/ripper/test_parser_events.rb (revision 30799) @@ -368,6 +368,7 @@ def test_mlhs_add_star bug2232 = '[ruby-core:26163]' + bug4364 = '[ruby-core:35078]' thru_mlhs_add_star = false tree = parse("a, *b = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} @@ -377,6 +378,18 @@ tree = parse("a, *b, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} assert_equal true, thru_mlhs_add_star assert_match(/mlhs_add\(mlhs_add_star\(mlhs_add\(mlhs_new\(\),a\),b\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug2232) + thru_mlhs_add_star = false + tree = parse("a, *, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} + assert_equal true, thru_mlhs_add_star + assert_match(/mlhs_add\(mlhs_add_star\(mlhs_add\(mlhs_new\(\),a\)\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug4364) + thru_mlhs_add_star = false + tree = parse("*b, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} + assert_equal true, thru_mlhs_add_star + assert_match(/mlhs_add\(mlhs_add_star\(mlhs_new\(\),b\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug4364) + thru_mlhs_add_star = false + tree = parse("*, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} + assert_equal true, thru_mlhs_add_star + assert_match(/mlhs_add\(mlhs_add_star\(mlhs_new\(\)\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug4364) end def test_mlhs_new -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/