mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-12 06:41:13 +02:00
* numbers.c (scm_istr2flo): Throw an `out of range' error when
exponent is too large instead of returning `#f'. The rationale is that in this case the string represents a valid number but we can't deal with it.
This commit is contained in:
parent
216b559acd
commit
dd47565aeb
1 changed files with 1 additions and 1 deletions
|
@ -2641,7 +2641,7 @@ scm_istr2flo (char *str, long len, long radix)
|
||||||
case DIGITS:
|
case DIGITS:
|
||||||
expon = expon * 10 + c - '0';
|
expon = expon * 10 + c - '0';
|
||||||
if (expon > SCM_MAXEXP)
|
if (expon > SCM_MAXEXP)
|
||||||
return SCM_BOOL_F; /* exponent too large */
|
scm_out_of_range ("string->number", SCM_MAKINUM (expon));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
goto out4;
|
goto out4;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue