summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--parse.y13
2 files changed, 10 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index dc2771a407..bfb54ed39a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,11 +8,6 @@ Wed Oct 4 17:25:14 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call): check protected visibility based on real self,
not ruby_frame->self. [ruby-talk:217822]
-Wed Oct 4 15:46:32 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
-
- * parse.y (mlhs): should interpret single parenthesized left hand
- side expression.
-
Wed Oct 4 08:52:30 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/optparse/test_getopts.rb: changed the class name of test case
diff --git a/parse.y b/parse.y
index 21cbbfd839..4359705dcb 100644
--- a/parse.y
+++ b/parse.y
@@ -279,7 +279,7 @@ static void top_local_setup();
%type <node> f_arglist f_args f_optarg f_opt f_rest_arg f_block_arg opt_f_block_arg
%type <node> assoc_list assocs assoc undef_list backref string_dvar
%type <node> block_var opt_block_var brace_block cmd_brace_block do_block lhs none fitem
-%type <node> mlhs mlhs_head mlhs_basic mlhs_item mlhs_node
+%type <node> mlhs mlhs_head mlhs_basic mlhs_entry mlhs_item mlhs_node
%type <id> fsym variable sym symbol operation operation2 operation3
%type <id> cname fname op
%type <num> f_norm_arg f_arg
@@ -743,7 +743,14 @@ command : operation command_args %prec tLOWEST
;
mlhs : mlhs_basic
- | tLPAREN mlhs ')'
+ | tLPAREN mlhs_entry ')'
+ {
+ $$ = $2;
+ }
+ ;
+
+mlhs_entry : mlhs_basic
+ | tLPAREN mlhs_entry ')'
{
$$ = NEW_MASGN(NEW_LIST($2), 0);
}
@@ -776,7 +783,7 @@ mlhs_basic : mlhs_head
;
mlhs_item : mlhs_node
- | tLPAREN mlhs ')'
+ | tLPAREN mlhs_entry ')'
{
$$ = $2;
}