Marc Tiehuis ff3bf98345 fix large f128 values being incorrectly parsed as inf
Found while fuzzing. Previously 1.1897314953572317650857593266280070162E4932
was parsed as +inf, which caused issues for round-trip serialization of
floats. Only f128 had issues, but have added other tests for all
floating point large normals.

The max_exponent for f128 was wrong, it is subtly different in the
decimal code-path as it is based on where the decimal digit should go.
This needs to be 2 greater than the max exponent (e.g. 308 or 4932) to
work correctly (greater by 1, then we use a >= comparision).

In addition, I've removed the redundant `optimize` constant which was only
use for testing the slow path locally.
2024-02-25 12:37:03 -08:00
..
2024-02-23 02:37:11 -07:00
2024-02-23 02:37:11 -07:00
2023-11-22 13:24:27 -05:00
2024-02-23 02:37:11 -07:00
2023-11-22 19:08:55 -07:00
2023-10-23 22:42:18 -04:00
2024-02-23 23:33:28 -08:00
2024-02-12 05:25:07 +01:00
2024-02-05 11:55:14 +03:30
2023-10-25 04:28:30 -04:00
2024-02-09 14:02:57 -08:00
2024-01-24 12:48:12 +01:00
2024-01-14 20:45:39 -05:00
2024-02-22 19:10:52 +01:00
2023-11-03 23:18:21 -04:00
2024-02-01 15:22:36 +02:00
2024-02-08 15:39:28 +01:00
2024-02-05 11:55:14 +03:30
2023-10-21 21:24:55 +00:00