static const fixnum fixnum_max =
(((fixnum)1 << (WORD_SIZE - TAG_BITS - 1)) - 1);
static const fixnum fixnum_min = (-((fixnum)1 << (WORD_SIZE - TAG_BITS - 1)));
-static const fixnum array_size_max = fixnum_max;
+static const fixnum array_size_max = ((cell)1 << (WORD_SIZE - TAG_BITS - 2));
// Allocates memory
inline cell factor_vm::from_signed_cell(fixnum x) {