fail for values greater than UINT64_MAX-2047. This caused the SQLite
text-to-float converter routine to give incorrect results for values
between '1.8446744073709550592eNNN' and '1.8446744073709551609eNNN' for any
exponent NNN. This problem was introduced by check-in [761d8fd18b0ee868]
and first appeared in version 3.47.0 and was reported by
[forum:/forumpost/569a7209179a7f5e|forum post 569a7209179a7f5e]. Fixed
by this check-in.
FossilOrigin-Name: 81342fa6dd03fffbe7d4d699ff049dcef4d30344578bb6f91cb58a4e5a4f6036
full-up Dekker double-double multiplication, and this idea works much better.
There are still a few inaccuracies, but it is much closer.
FossilOrigin-Name: 4fa6938dac2d3d813a37664053db31451a2a065f78dd212488f5f7f8d583ddc5
conversions that was done for floating point conversions by
check-in [1c76f1d8ec0937a2].
FossilOrigin-Name: aafb7a21041090e529491b0ce30c3902420be0551b1b2c55840a5fbb9105fb7d
and assuming a UTF16 encoding, ignore the last byte.
Ticket [9eda2697f5cc1aba].
FossilOrigin-Name: 1c76f1d8ec0937a2d2e4ce75f98494c953e9621db31945d7e44f45d90d1c3892
work better on systems where "long double" and "double" are the same type,
but still needs refinement and testing.
FossilOrigin-Name: a3f7614b2095fbc1eca54801b2da88f85f294ec5