* eval.c (rb_eval): set constant in cbase scope.
* eval.c (assign): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ebe2d10c43
commit
dfa40855bd
@ -1,3 +1,9 @@
|
||||
Sat Aug 3 21:23:56 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
|
||||
|
||||
* eval.c (rb_eval): set constant in cbase scope.
|
||||
|
||||
* eval.c (assign): ditto.
|
||||
|
||||
Fri Aug 2 09:12:32 2002 Minero Aoki <aamine@loveruby.net>
|
||||
|
||||
* ext/strscan/strscan.c: follow allocation framework.
|
||||
|
8
eval.c
8
eval.c
@ -2932,7 +2932,7 @@ rb_eval(self, n)
|
||||
rb_raise(rb_eTypeError, "no class/module to define constant");
|
||||
}
|
||||
result = rb_eval(self, node->nd_value);
|
||||
rb_const_set(ruby_class, node->nd_vid, result);
|
||||
rb_const_set(ruby_cbase, node->nd_vid, result);
|
||||
break;
|
||||
|
||||
case NODE_CVDECL:
|
||||
@ -3303,7 +3303,7 @@ rb_eval(self, n)
|
||||
klass = rb_define_class_id(node->nd_cname, super);
|
||||
rb_set_class_path(klass,ruby_class,rb_id2name(node->nd_cname));
|
||||
rb_class_inherited(super, klass);
|
||||
rb_const_set(ruby_class, node->nd_cname, klass);
|
||||
rb_const_set(ruby_cbase, node->nd_cname, klass);
|
||||
}
|
||||
if (ruby_wrapper) {
|
||||
rb_extend_object(klass, ruby_wrapper);
|
||||
@ -3339,7 +3339,7 @@ rb_eval(self, n)
|
||||
}
|
||||
else {
|
||||
module = rb_define_module_id(node->nd_cname);
|
||||
rb_const_set(ruby_class, node->nd_cname, module);
|
||||
rb_const_set(ruby_cbase, node->nd_cname, module);
|
||||
rb_set_class_path(module,ruby_class,rb_id2name(node->nd_cname));
|
||||
}
|
||||
if (ruby_wrapper) {
|
||||
@ -3983,7 +3983,7 @@ assign(self, lhs, val, pcall)
|
||||
break;
|
||||
|
||||
case NODE_CDECL:
|
||||
rb_const_set(ruby_class, lhs->nd_vid, val);
|
||||
rb_const_set(ruby_cbase, lhs->nd_vid, val);
|
||||
break;
|
||||
|
||||
case NODE_CVDECL:
|
||||
|
Loading…
x
Reference in New Issue
Block a user