OK, adding bignums works; multiplying bignums does not work.

There's no evidence of a bug in reading/printing, because the only way I can currently get a number big enough to trigger the supposed bug is by multiplying, which doesn't work.
This commit is contained in:
Simon Brooke 2019-01-04 11:04:55 +00:00
parent cd509b0668
commit 67443e1d46

View file

@ -79,7 +79,7 @@ long double numeric_value( struct cons_pointer pointer ) {
*/
struct cons_pointer make_integer( int64_t value, struct cons_pointer more ) {
struct cons_pointer result = NIL;
debug_print( L"Entering make_integer\n", DEBUG_ARITH );
debug_print( L"Entering make_integer\n", DEBUG_ALLOC );
if ( integerp( more ) || nilp( more ) ) {
result = allocate_cell( INTEGERTAG );
@ -89,8 +89,8 @@ struct cons_pointer make_integer( int64_t value, struct cons_pointer more ) {
}
debug_print( L"make_integer: returning\n", DEBUG_ARITH );
debug_dump_object( result, DEBUG_ARITH );
debug_print( L"make_integer: returning\n", DEBUG_ALLOC );
debug_dump_object( result, DEBUG_ALLOC );
return result;
}