summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-06-19 09:32:13 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-06-19 09:32:13 +0000
commitf9747b7a571556b6b8add7cfd4e324ad316d50b3 (patch)
tree3971f82312c9b748dcf763fd24e91489657fb36c /parse.y
parent992923053cfb51dc04c6a7ee07ca6fff1b61d1a5 (diff)
1.1b9_27
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y15
1 files changed, 14 insertions, 1 deletions
diff --git a/parse.y b/parse.y
index 1ba5da4375..50c8e389d4 100644
--- a/parse.y
+++ b/parse.y
@@ -437,6 +437,11 @@ mlhs : mlhs_head
{
$$ = NEW_MASGN(NEW_LIST($1), 0);
}
+ | tLPAREN mlhs ')'
+ {
+ $$ = $2;
+ }
+
| mlhs_head tSTAR lhs
{
$$ = NEW_MASGN(NEW_LIST($1), $3);
@@ -455,11 +460,19 @@ mlhs : mlhs_head
}
mlhs_head : lhs ','
+ | tLPAREN mlhs ')' ','
+ {
+ $$ = $2;
+ }
mlhs_tail : lhs
{
$$ = NEW_LIST($1);
}
+ | tLPAREN mlhs ')'
+ {
+ $$ = NEW_LIST($2);
+ }
| mlhs_tail ',' lhs
{
$$ = list_append($1, $3);
@@ -3428,7 +3441,7 @@ assignable(id, val)
}
else{
if (!dyna_var_defined(id)) {
- dyna_var_asgn(id, 0);
+ dyna_var_push(id, 0);
lhs = NEW_DASGN_PUSH(id, val);
}
else {