From b958e2add835d62c0a62edaf9a23ecbbd70a3635 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 23 Oct 2020 14:38:24 +0900 Subject: Removed canonicalization for mathn --- enum.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'enum.c') diff --git a/enum.c b/enum.c index 8a791cc63d..d21becd8fa 100644 --- a/enum.c +++ b/enum.c @@ -3854,10 +3854,7 @@ sum_iter_normalize_memo(struct enum_sum_memo *memo) memo->v = rb_fix_plus(LONG2FIX(memo->n), memo->v); memo->n = 0; - /* r can be an Integer when mathn is loaded */ switch (TYPE(memo->r)) { - case T_FIXNUM: memo->v = rb_fix_plus(memo->r, memo->v); break; - case T_BIGNUM: memo->v = rb_big_plus(memo->r, memo->v); break; case T_RATIONAL: memo->v = rb_rational_plus(memo->r, memo->v); break; case T_UNDEF: break; default: UNREACHABLE; /* or ...? */ @@ -4107,13 +4104,7 @@ enum_sum(int argc, VALUE* argv, VALUE obj) if (memo.n != 0) memo.v = rb_fix_plus(LONG2FIX(memo.n), memo.v); if (memo.r != Qundef) { - /* r can be an Integer when mathn is loaded */ - if (FIXNUM_P(memo.r)) - memo.v = rb_fix_plus(memo.r, memo.v); - else if (RB_TYPE_P(memo.r, T_BIGNUM)) - memo.v = rb_big_plus(memo.r, memo.v); - else - memo.v = rb_rational_plus(memo.r, memo.v); + memo.v = rb_rational_plus(memo.r, memo.v); } return memo.v; } -- cgit v1.2.3