@@ -2468,7 +2468,6 @@ recursive_equal(ary1, ary2)
2468
2468
{
2469
2469
long i ;
2470
2470
2471
- if (rb_inspecting_p (ary1 )) return Qfalse ;
2472
2471
for (i = 0 ; i < RARRAY (ary1 )-> len ; i ++ ) {
2473
2472
if (!rb_equal (rb_ary_elt (ary1 , i ), rb_ary_elt (ary2 , i )))
2474
2473
return Qfalse ;
@@ -2502,6 +2501,7 @@ rb_ary_equal(ary1, ary2)
2502
2501
return rb_equal (ary2 , ary1 );
2503
2502
}
2504
2503
if (RARRAY (ary1 )-> len != RARRAY (ary2 )-> len ) return Qfalse ;
2504
+ if (rb_inspecting_p (ary1 )) return Qfalse ;
2505
2505
return rb_protect_inspect (recursive_equal , ary1 , ary2 );
2506
2506
}
2507
2507
@@ -2511,7 +2511,6 @@ recursive_eql(ary1, ary2)
2511
2511
{
2512
2512
long i ;
2513
2513
2514
- if (rb_inspecting_p (ary1 )) return Qfalse ;
2515
2514
for (i = 0 ; i < RARRAY (ary1 )-> len ; i ++ ) {
2516
2515
if (!rb_eql (rb_ary_elt (ary1 , i ), rb_ary_elt (ary2 , i )))
2517
2516
return Qfalse ;
@@ -2534,6 +2533,7 @@ rb_ary_eql(ary1, ary2)
2534
2533
if (ary1 == ary2 ) return Qtrue ;
2535
2534
if (TYPE (ary2 ) != T_ARRAY ) return Qfalse ;
2536
2535
if (RARRAY (ary1 )-> len != RARRAY (ary2 )-> len ) return Qfalse ;
2536
+ if (rb_inspecting_p (ary1 )) return Qfalse ;
2537
2537
return rb_protect_inspect (recursive_eql , ary1 , ary2 );
2538
2538
}
2539
2539
@@ -2546,9 +2546,6 @@ recursive_hash(ary)
2546
2546
long i , h ;
2547
2547
VALUE n ;
2548
2548
2549
- if (rb_inspecting_p (ary )) {
2550
- return LONG2FIX (0 );
2551
- }
2552
2549
h = RARRAY (ary )-> len ;
2553
2550
for (i = 0 ; i < RARRAY (ary )-> len ; i ++ ) {
2554
2551
h = (h << 1 ) | (h < 0 ? 1 : 0 );
@@ -2570,6 +2567,9 @@ static VALUE
2570
2567
rb_ary_hash (ary )
2571
2568
VALUE ary ;
2572
2569
{
2570
+ if (rb_inspecting_p (ary )) {
2571
+ return LONG2FIX (0 );
2572
+ }
2573
2573
return rb_protect_inspect (recursive_hash , ary , 0 );
2574
2574
}
2575
2575
@@ -2607,7 +2607,6 @@ recursive_cmp(ary1, ary2)
2607
2607
{
2608
2608
long i , len ;
2609
2609
2610
- if (rb_inspecting_p (ary1 )) return Qfalse ;
2611
2610
len = RARRAY (ary1 )-> len ;
2612
2611
if (len > RARRAY (ary2 )-> len ) {
2613
2612
len = RARRAY (ary2 )-> len ;
@@ -2650,6 +2649,7 @@ rb_ary_cmp(ary1, ary2)
2650
2649
2651
2650
ary2 = to_ary (ary2 );
2652
2651
if (ary1 == ary2 ) return INT2FIX (0 );
2652
+ if (rb_inspecting_p (ary1 )) return INT2FIX (0 );
2653
2653
v = rb_protect_inspect (recursive_cmp , ary1 , ary2 );
2654
2654
if (v != Qundef ) return v ;
2655
2655
len = RARRAY (ary1 )-> len - RARRAY (ary2 )-> len ;
0 commit comments