diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | eval.c | 5 |
2 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,10 @@ +Sat Jan 12 18:27:41 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (rb_define_alloc_func, rb_undef_alloc_func): should + define/undef on a signleton class. [ruby-core:09959] + +9959] + Sat Jan 12 12:04:14 2008 Tadayoshi Funaba <tadf@dotrb.org> * lib/date.rb, lib/date/format.rb: tuning for performance. @@ -453,7 +453,8 @@ rb_define_alloc_func(klass, func) VALUE (*func) _((VALUE)); { Check_Type(klass, T_CLASS); - rb_add_method(CLASS_OF(klass), ID_ALLOCATOR, NEW_CFUNC(func, 0), NOEX_PRIVATE); + rb_add_method(rb_singleton_class(klass), ID_ALLOCATOR, NEW_CFUNC(func, 0), + NOEX_PRIVATE); } void @@ -461,7 +462,7 @@ rb_undef_alloc_func(klass) VALUE klass; { Check_Type(klass, T_CLASS); - rb_add_method(CLASS_OF(klass), ID_ALLOCATOR, 0, NOEX_UNDEF); + rb_add_method(rb_singleton_class(klass), ID_ALLOCATOR, 0, NOEX_UNDEF); } static NODE* |