Fix a problem with using stat4 data to estimate the number of rows scanned by a range constraint on the second or subsequent column of any index where an affinity transformation must be applied to the constraint argument.
Add tests to check if ANALYZE is choosing common non-periodic samples for the stat4 table.
Further stat4 related tests.
Simplify branch coverage testing by interchanging the order of two tests
in the whereLoopInsert() function.
Make sure the omit-noop-left-join optimization is not applied if columns
of the LEFT JOIN are used in the ORDER BY clause.  
Ticket [be84e357c035]
Fix another problem in stat4 sample selection.
Harden the STAT4 logic in where.c against OOM faults.
Conditionally exclude code from analyze.c that is not used by STAT3.
Fix out-of-order variable declaration.  Fix harmless compiler warning.
The sqlite3Stat4ProbeSetValue() routine should always return results using
the database encoding.
Fix a bug in the command-line shell for ".mode insert" on UTF16 databases
with BLOB values.
Add tests to improve coverage when SQLITE_ENABLE_STAT3 is defined.
Rearrange the order of conditions in an "if" statement to facilitate testing.
When preparing an UPDATE statement, avoid generating VDBE code for those foreign key related actions and constraint checks that may be seen to be unnecessary by considering the subset of table columns potentially modified by the UPDATE.
Make sure the destination WhereLoop is left in a sane state when an
OOM fault occurs inside of whereLoopXfer().
Combine the FuncDef.iPrefEnc and FuncDef.flags fields into a single
new FuncDef.funcFlags field.
When converting from a BLOB value in the tointeger() and toreal() SQL functions, make sure that endianness of the machine does not matter.
Add the ability to generate assembly listing files using the MSVC makefile.
Merge updates from trunk.