1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* class.c (clone_method): Just use ruby_cref as cref.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
knu 2008-05-22 18:50:11 +00:00
parent 070cc6573b
commit 461d682980
2 changed files with 7 additions and 4 deletions

View file

@ -1,3 +1,7 @@
Fri May 23 03:48:10 2008 Akinori MUSHA <knu@iDaemons.org>
* class.c (clone_method): Just use ruby_cref as cref.
Fri May 23 01:03:23 2008 Akinori MUSHA <knu@iDaemons.org>
* class.c (rb_singleton_class_clone): Pass Qnil, not 0.

View file

@ -57,19 +57,18 @@ clone_method(mid, body, nklass)
NODE *fbody = body->nd_body;
if (fbody) {
NODE *cref = NEW_NODE(NODE_CREF, nklass, 0, 0);
VALUE nbody;
switch (nd_type(fbody)) {
case NODE_SCOPE:
fbody = rb_copy_node_scope(fbody, cref);
fbody = rb_copy_node_scope(fbody, ruby_cref);
break;
case NODE_BMETHOD:
nbody = rb_block_dup(fbody->nd_cval, nklass, (VALUE)cref);
nbody = rb_block_dup(fbody->nd_cval, nklass, (VALUE)ruby_cref);
fbody = NEW_BMETHOD(nbody);
break;
case NODE_DMETHOD:
nbody = rb_method_dup(fbody->nd_cval, nklass, (VALUE)cref);
nbody = rb_method_dup(fbody->nd_cval, nklass, (VALUE)ruby_cref);
fbody = NEW_DMETHOD(nbody);
break;
}