summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-12-17 10:34:30 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-12-17 10:34:30 +0000
commit86db656415a2e05b573d95d813d6ca5a26b55d07 (patch)
tree379c349bd378072c2907f4e6579b677573a2e087 /parse.y
parent3a20ed532b57da1e58287a5c53abe14400a085f4 (diff)
* node.h (NODE_ATTRASGN): new node, assignment to attribute.
[ruby-core:00637]. * eval.c (is_defined, rb_eval): ditto. * parse.y (attrset, node_assign): ditto. * string.c (rb_str_substr): tail sharing. [ruby-core:00650] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y3
1 files changed, 2 insertions, 1 deletions
diff --git a/parse.y b/parse.y
index 1e5696b..74d4d09 100644
--- a/parse.y
+++ b/parse.y
@@ -4705,7 +4705,7 @@ attrset(recv, id)
ID id;
{
value_expr(recv);
- return NEW_CALL(recv, rb_id_attrset(id), 0);
+ return NEW_ATTRASGN(recv, rb_id_attrset(id), 0);
}
static void
@@ -4765,6 +4765,7 @@ node_assign(lhs, rhs)
lhs->nd_value = rhs;
break;
+ case NODE_ATTRASGN:
case NODE_CALL:
lhs->nd_args = arg_add(lhs->nd_args, rhs);
break;