Fix compiler warnings on MSVC build.

FossilOrigin-Name: 01c4b5b84ec7ce589e20ea66e80011f092ab32f0
diff --git a/src/expr.c b/src/expr.c
index 0602032..ff75f5f 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -571,12 +571,20 @@
   if( z[1]==0 ){
     /* Wildcard of the form "?".  Assign the next variable number */
     assert( z[0]=='?' );
+#if SQLITE_MAX_VARIABLE_NUMBER<=32767
+    pExpr->iColumn = (i16)(++pParse->nVar);
+#else
     pExpr->iColumn = ++pParse->nVar;
+#endif
   }else if( z[0]=='?' ){
     /* Wildcard of the form "?nnn".  Convert "nnn" to an integer and
     ** use it as the variable number */
-    int i;
-    pExpr->iColumn = i = atoi((char*)&z[1]);
+    int i = atoi((char*)&z[1]);
+#if SQLITE_MAX_VARIABLE_NUMBER<=32767
+    pExpr->iColumn = (i16)i;
+#else
+    pExpr->iColumn = i;
+#endif
     testcase( i==0 );
     testcase( i==1 );
     testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER]-1 );
@@ -605,7 +613,11 @@
       }
     }
     if( i>=pParse->nVarExpr ){
+#if SQLITE_MAX_VARIABLE_NUMBER<=32767
+      pExpr->iColumn = (i16)(++pParse->nVar);
+#else
       pExpr->iColumn = ++pParse->nVar;
+#endif
       if( pParse->nVarExpr>=pParse->nVarExprAlloc-1 ){
         pParse->nVarExprAlloc += pParse->nVarExprAlloc + 10;
         pParse->apVarExpr =
diff --git a/src/os_win.c b/src/os_win.c
index c8240f1..bd23a84 100644
--- a/src/os_win.c
+++ b/src/os_win.c
@@ -1254,7 +1254,7 @@
   */
   DWORD error = GetLastError();
   DWORD dwLen = 0;
-  char *zOut;
+  char *zOut = 0;
 
   if( isNT() ){
     WCHAR *zTempWide = NULL;
diff --git a/src/resolve.c b/src/resolve.c
index 40aab3f..09f547c 100644
--- a/src/resolve.c
+++ b/src/resolve.c
@@ -407,7 +407,11 @@
     if( p->pTab->iPKey==iCol ){
       p->iColumn = -1;
     }else{
+#if SQLITE_MAX_VARIABLE_NUMBER<=32767
+      p->iColumn = (i16)iCol;
+#else
       p->iColumn = iCol;
+#endif
       pItem->colUsed |= ((Bitmask)1)<<(iCol>=BMS ? BMS-1 : iCol);
     }
     ExprSetProperty(p, EP_Resolved);
diff --git a/src/vdbeaux.c b/src/vdbeaux.c
index a2936f3..37f8b14 100644
--- a/src/vdbeaux.c
+++ b/src/vdbeaux.c
@@ -60,7 +60,7 @@
 #endif
   assert( p->zSql==0 );
   p->zSql = sqlite3DbStrNDup(p->db, z, n);
-  p->isPrepareV2 = isPrepareV2;
+  p->isPrepareV2 = (u8)isPrepareV2;
 }
 
 /*
@@ -1359,7 +1359,7 @@
 
     p->nCursor = (u16)nCursor;
     if( p->aVar ){
-      p->nVar = nVar;
+      p->nVar = (u16)nVar;
       for(n=0; n<nVar; n++){
         p->aVar[n].flags = MEM_Null;
         p->aVar[n].db = db;