A small bug in integer-length, assuming I understand what that function is meant to be doing. This lets it correspond to the inum case at least. * numbers.c (scm_integer_length): On negative bignums, adjust mpz_sizeinbase to account for it looking at absolute value where we want ones-complement. * tests/numbers.test (integer-length): Exercise some negatives, in particular "...11100..00". In the tests here, it's only ...11100..00 which is affected by the problem, the others are already right, I just added them for coverage and confirmation of what integer-length does.