I was hitting an issue on 64-bit Windows where on every search it would hit RangeError: bignum too big to convert into `long'. This error was due to some NUM2LONG conversions - I suspect it's because on 64-bit Windows, long (32 bits) is too small to fit a pointer (64 bits)? I think it's enough to compare object ids directly with rb_equal, and doing so fixes the error for me.
I was hitting an issue on 64-bit Windows where on every search it would hit
RangeError: bignum too big to convert into `long'
. This error was due to some NUM2LONG conversions - I suspect it's because on 64-bit Windows, long (32 bits) is too small to fit a pointer (64 bits)? I think it's enough to compare object ids directly withrb_equal
, and doing so fixes the error for me.