GitHub

Original file line numberDiff line numberDiff line change

@@ -316,7 +316,11 @@ struct RCptr {

316316

#endif

317317

#define mrb_test(o) mrb_bool(o)

318318

#ifndef mrb_bigint_p

319+

#ifdef MRB_USE_BIGINT

319320

#define mrb_bigint_p(o) (mrb_type(o) == MRB_TT_BIGINT)

321+

#else

322+

#define mrb_bigint_p(o) FALSE

323+

#endif

320324

#endif

321325
322326

/**

Original file line numberDiff line numberDiff line change

@@ -190,11 +190,7 @@ int_powm(mrb_state *mrb, mrb_value x)

190190

return mrb_int_pow(mrb, x, mrb_get_arg1(mrb));

191191

}

192192

mrb_get_args(mrb, "oo", &e, &m);

193-

if (!mrb_integer_p(e)

194-

#ifdef MRB_USE_BIGINT

195-

&& !mrb_bigint_p(e)

196-

#endif

197-

) {

193+

if (!mrb_integer_p(e) && !mrb_bigint_p(e)) {

198194

mrb_raise(mrb, E_TYPE_ERROR, "int.pow(n,m): 2nd argument not allowed unless 1st argument is an integer");

199195

}

200196

#ifdef MRB_USE_BIGINT

Original file line numberDiff line numberDiff line change

@@ -432,11 +432,7 @@ mrb_get_values_at(mrb_state *mrb, mrb_value obj, mrb_int olen, mrb_int argc, con

432432

for (mrb_int i = 0; i < argc; i++) {

433433

mrb_value v = argv[i];

434434
435-

if (mrb_integer_p(v)

436-

#ifdef MRB_USE_BIGINT

437-

|| mrb_bigint_p(v)

438-

#endif

439-

) {

435+

if (mrb_integer_p(v) || mrb_bigint_p(v)) {

440436

mrb_int i = mrb_as_int(mrb, v);

441437

mrb_ary_push(mrb, result, func(mrb, obj, i));

442438

}

Read the original on github.com ↗