ref: 0719ce2aa793f28ca63d2395a3568b75a60db27b
parent: 2d8adc7b881f20a8cc2dbccab84fc7e1655752a6
author: Ori Bernstein <ori@eigenstate.org>
date: Tue Feb 9 08:57:38 EST 2021
stdio: remove erronous assert in dtoa The value of `k` in dtoa() is an estimate of floor(log10(d)), where `d` is the number being converted. The code was asserting that 'k' was less than 100, but the full range of a double goes to 10^308 or so. This means that the majority of the range of a double would trigger that assert.
--- a/sys/src/libstdio/dtoa.c
+++ b/sys/src/libstdio/dtoa.c
@@ -811,7 +811,6 @@
b5 = -k;
s5 = 0;
}
- assert(k < 100);
if (mode < 0 || mode > 9)
mode = 0;
try_quick = 1;