return parent->name(tagged); \
}
-/* Note that to_fixnum, unlike the others, is strict. */
-CELL_TO_FOO(to_fixnum, fixnum, bignum_to_fixnum_strict)
+CELL_TO_FOO(to_fixnum, fixnum, bignum_to_fixnum)
+CELL_TO_FOO(to_fixnum_strict, fixnum, bignum_to_fixnum_strict)
CELL_TO_FOO(to_cell, cell, bignum_to_cell)
CELL_TO_FOO(to_signed_8, int64_t, bignum_to_long_long)
CELL_TO_FOO(to_unsigned_8, uint64_t, bignum_to_ulong_long)
inline cell factor_vm::unbox_array_size() {
cell obj = ctx->pop();
- fixnum n = to_fixnum(obj);
+ fixnum n = to_fixnum_strict(obj);
if (n >= 0 && n < (fixnum)array_size_max) {
return n;
}
void primitive_double_bits();
void primitive_bits_double();
fixnum to_fixnum(cell tagged);
+ fixnum to_fixnum_strict(cell tagged);
cell to_cell(cell tagged);
cell from_signed_8(int64_t n);
int64_t to_signed_8(cell obj);