初めまして。
上野@ぶるーすかいと申します。

いつも楽しく ;-) Ruby 使わせてもらってます。


最近 GC 回りの勉強に Ruby のソースを読ませてもらってるんですが、
単純ミスっぽいコードを見つけましたので報告します。


--- ruby-1.4.2/eval.c.orig	Sun Dec  5 20:25:03 1999
+++ ruby-1.4.2/eval.c	Sun Dec  5 20:25:15 1999
@@ -5931,7 +5931,7 @@
     rb_define_global_function("lambda", rb_f_lambda, 0);
     rb_define_global_function("binding", rb_f_binding, 0);
     rb_cBinding = rb_define_class("Binding", rb_cObject);
-    rb_undef_method(CLASS_OF(rb_cMethod), "new");
+    rb_undef_method(CLASS_OF(rb_cBinding), "new");
     rb_define_method(rb_cBinding, "clone", bind_clone, 0);
 
     rb_cMethod = rb_define_class("Method", rb_cObject);
--- ruby-1.4.2/gc.c.orig	Sun Dec  5 20:25:03 1999
+++ ruby-1.4.2/gc.c	Sun Dec  5 20:25:29 1999
@@ -243,8 +243,8 @@
 	/* Realloc heaps */
 	heaps_length += HEAPS_INCREMENT;
 	heaps = (heaps_used>0)?
-	    (RVALUE**)realloc(heaps, heaps_length*sizeof(RVALUE)):
-	    (RVALUE**)malloc(heaps_length*sizeof(RVALUE));
+	    (RVALUE**)realloc(heaps, heaps_length*sizeof(RVALUE*)):
+	    (RVALUE**)malloc(heaps_length*sizeof(RVALUE*));
 	if (heaps == 0) rb_fatal("can't alloc memory");
     }



それでは、失礼します。

-=====--===-
   うえの かつひろ @ BLUE-SKYNET    <unnie / blue.sky.or.jp>  --=
---=----===-                    http://www.blue.sky.or.jp/  -==