Make LARGEST_UINT64 unsigned. This was causing adjustExponent to fail when compiled with msvc.
Create sqlite4_num_isnan.
Prevent reading out of bounds in sqlite4_num_from_text. Parsing 'in' (prefix of 'inf') with byte count 2 triggered the bug.
Create sqlite4_num_from_int64.
Make sqlite4_num's exponent signed.
Fix sqlite4_num_from_text in 0.000(many zeros)00123 case.
Create sqlite4_num_isinf
Add a few sqlite4_num tests.
Add a failing test and supporting functions. When the buffer is ended by a passed-in byte count instead of a trailing 0, sqlite4_num_from_text returns NaN
Fix defect in which sqlite4_num_from_text returns NaN if it uses exactly as many bytes as the caller allows.
Add sqlite4_num_add/sub/mul/div to testfixture and some tests that use them.
Num comparison says that +0 = -0. Before, 1-1 > (-1)-(-1).
Add test fixture functions for sqlite4_num_isinf and sqlite4_num_isnan, and some related test cases.
Remove two MySQL-isms:  Strings in double-quotes and identifiers quoted by
grave accents.
Fix a memory leak in the test harness.
Fix a memory leak in DETACH.
Fix the data decoder so that it correctly handles +Inf and -Inf.
Change the API for binding strings and blobs so that the destructor now
carries an extra argument which can be used as the sqlite4_env pointer,
thus allowing functions like sqlite4_free() to be used as a string or
blob destructor.
Fix sqlite4_num_to_text when formatting an integer with a negative exponent. It was leaving an uninitialized byte in the destination string.
Fold in Peter Reid's fixes and enhancements to the sqlite4_num object.