From: ts Date: 2004-09-21T18:21:19+09:00 Subject: rb_ary_equal ("1.8.2 2004-09-17") it's normal ? (see where is the test RARRAY(ary1)->len != RARRAY(ary2)->len) static VALUE rb_ary_equal(ary1, ary2) VALUE ary1, ary2; { long i; if (ary1 == ary2) return Qtrue; if (TYPE(ary2) != T_ARRAY) { if (!rb_respond_to(ary2, rb_intern("to_ary"))) { return Qfalse; } return rb_equal(ary2, ary1); } for (i=0; ilen; i++) { if (RARRAY(ary1)->len != RARRAY(ary2)->len) return Qfalse; if (!rb_equal(RARRAY(ary1)->ptr[i], RARRAY(ary2)->ptr[i])) return Qfalse; } return Qtrue; } Guy Decoux