diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2012-10-01 17:35:10 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2012-10-01 17:35:10 -0700 |
commit | 40bae281a56c9e305852905dcbd29125de388b25 (patch) | |
tree | e2f1675ca58161fb791e179acf31c744b64deb63 /arith.h | |
parent | baf80248032cdb8856d9e3217d48e9fd5e9e49c5 (diff) | |
download | txr-40bae281a56c9e305852905dcbd29125de388b25.tar.gz txr-40bae281a56c9e305852905dcbd29125de388b25.tar.bz2 txr-40bae281a56c9e305852905dcbd29125de388b25.zip |
* arith.c (bignum_from_long): New function.
* arith.h (bignum_from_long): Declared.
* lib.c (int_str): Streamlined. Only use mp_read_radix in the case when
wcstol fails, because now we have bignum_from_long to handle all values
of long. Ensure that the bignum is normalized, in case it falls in the
fixnum range (does not happen on our usual platforms).
Diffstat (limited to 'arith.h')
-rw-r--r-- | arith.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -26,6 +26,7 @@ val make_bignum(void); val bignum(cnum cn); +val bignum_from_long(long l); int highest_bit(int_ptr_t n); val normalize(val bignum); val in_int_ptr_range(val bignum); |