summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-10-06 19:15:29 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-10-06 19:15:29 +0000
commit6fc88be3d97172841ad099a9489ed80d8ecae5de (patch)
treebfb86d66ef7169c56b1e9cdf2f55d33cecc86941
parent8a4abe47cacd613a2d77287df75245fef6693246 (diff)
* parse.y (stmt): should not expand mrhs if lhs is solely starred.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--parse.y4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 85ca8029f1..841e686086 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Tue Oct 7 04:15:25 2003 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * parse.y (stmt): should not expand mrhs if lhs is solely starred.
+
Tue Oct 7 02:57:53 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (stmt): rhs of multiple assignment should not be
diff --git a/parse.y b/parse.y
index 59ef2a891f..93d395717e 100644
--- a/parse.y
+++ b/parse.y
@@ -486,7 +486,7 @@ stmt : kALIAS fitem {lex_state = EXPR_FNAME;} fitem
| mlhs '=' command_call
{
value_expr($3);
- $1->nd_value = NEW_TO_ARY($3);
+ $1->nd_value = ($1->nd_head) ? NEW_TO_ARY($3) : NEW_ARRAY($3);
$$ = $1;
}
| var_lhs tOP_ASGN command_call
@@ -578,7 +578,7 @@ stmt : kALIAS fitem {lex_state = EXPR_FNAME;} fitem
}
| mlhs '=' arg_value
{
- $1->nd_value = NEW_TO_ARY($3);
+ $1->nd_value = ($1->nd_head) ? NEW_TO_ARY($3) : NEW_ARRAY($3);
$$ = $1;
}
| mlhs '=' mrhs