Hi,

In message "Re: _id2ref bug?"
    on 03/08/15, ts <decoux / moulon.inra.fr> writes:

| It has a finalizer and it's in a "freeing page" : this case is possible ?
| If yes, flags is not set to 0 and this can explain the problem

It is very possible.  It should be checked by "RBASIC(ptr)->klass == 0".
Thank you.

Still wondering if this solve his problem.

							matz.

--- gc.c	6 Aug 2003 21:50:05 -0000	1.153
+++ gc.c	14 Aug 2003 17:08:26 -0000
@@ -1640,3 +1640,3 @@ id2ref(obj, id)
     }
-    if (BUILTIN_TYPE(ptr) == 0) {
+    if (RBASIC(ptr)->klass == 0) {
 	rb_raise(rb_eRangeError, "0x%lx is recycled object", p0);