Since numeric affinity is the most common case, check it first.  Interchange
the NONE and TEXT affinity codes for easier checking of no affinity.
Performance improvement for affinity transformations on comparison operators.
Merge the Mem.r value into the MemValue union as Mem.u.r.  Hence, a Mem can
now store an integer or a real but not both at the same time.  Strings are
still stored in a separate element Mem.z, for now.
Correct typos in comments.  No changes to code.
Add the Mem.szMalloc element to the Mem object and use it to keep track of
the size of the Mem.zMalloc allocation.
Add the sqlite3VdbeMemClearAndResize() interface to be used in place of
sqlite3VdbeMemGrow().
Make sure that the sorting-index pre-filter recognizes that a rowid reference
might be sortable.  This fixes a performance regression.
Add the sqlite3VdbeMemClearAndResize() function.  Fix a sorting-index
prefilter problem.
The OP_Column opcode runs faster and is smaller by manually in-lining the
code that persists string values in the output register.
Updates to comments.  No code changes.
Small size reduction and performance increase for releaseMemArray().
Remove a local variable from the OP_Column implementation, resulting in a
modest size reduction and a performance increase.
Make the "nolock" VFS on unix a version-3 VFS so that the sorter can
use memory-mapped I/O.
Do not attempt to extend the temp file if VFS version 3 is not supported and
hence memory mapped I/O is unavailable.
Fix the affinity on inserts into the ANALYZE tables.  Change the affinity
characters to be upper case, to make the P5 parameter of comparison operators
easier to read.
Tighten the conditions under which applyNumericAffinity() be called and add
assert() statements to prove that it is never called otherwise.
Recognize the invariant that a Mem object cannot be MEM_Dyn and have 
a non-zero szMalloc at the same time.  Enforce this with assert()s and
exploit it in the sqlite3VdbeMemClearAndResize() routine for a performance
increase.
Simplify two conditionals and add testcase() macros to the affinity transform
logic in the comparison operators.
Revise macro usage in 'sqliteInt.h'.
Only enable HAVE_STRCHRNUL by default on linux, as that is the only place
it appears to work by default.