From 9dfbcbae7bbb9b70bfe6f85ef1b4a5b47b6031a0 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Mon, 1 Aug 2022 16:26:02 +0900 Subject: [PATCH] object.c (mrb_equal): support big-integers. --- src/object.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/object.c b/src/object.c index cc2314da9..0b72c21d7 100644 --- a/src/object.c +++ b/src/object.c @@ -68,6 +68,13 @@ mrb_equal(mrb_state *mrb, mrb_value obj1, mrb_value obj2) return TRUE; return FALSE; } +#endif +#ifdef MRB_USE_BIGINT + if (mrb_bigint_p(obj1) && (mrb_integer_p(obj2) || mrb_bigint_p(obj2))) { + if (mrb_bint_cmp(mrb, obj1, obj2) == 0) + return TRUE; + return FALSE; + } #endif result = mrb_funcall_id(mrb, obj1, MRB_OPSYM(eq), 1, obj2); if (mrb_test(result)) return TRUE;