From 8deae5ade337b578599b5e3c22d9480f24e7e53e Mon Sep 17 00:00:00 2001 From: drh Date: Wed, 29 Jul 2020 12:23:20 +0000 Subject: [PATCH] Fix signed/unsigned compiler warnings. FossilOrigin-Name: 1d69eee8b085d514f442840346f001b4785f8ec64f5ba66943e9577b26e2e29c --- manifest | 22 +++++++++++----------- manifest.uuid | 2 +- src/btree.c | 2 +- src/build.c | 4 ++-- src/insert.c | 2 +- src/util.c | 2 +- src/vdbe.c | 4 ++-- src/wal.c | 17 +++++++++-------- 8 files changed, 28 insertions(+), 27 deletions(-) diff --git a/manifest b/manifest index 48601089f4..ed5431dc02 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Earlier\sdetection\sof\sout-of-range\spage\snumbers\sin\sthe\sbtree\slayer. -D 2020-07-28T20:32:12.478 +C Fix\ssigned/unsigned\scompiler\swarnings. +D 2020-07-29T12:23:20.348 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -476,10 +476,10 @@ F src/auth.c a3d5bfdba83d25abed1013a8c7a5f204e2e29b0c25242a56bc02bb0c07bf1e06 F src/backup.c b1c90cd4110248c8e1273ff4578d3a84c0c34725e1b96dacd4a6294a908702de F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6 -F src/btree.c 398b6a2ec3224533beab389b3db12da7bda726805ce362130fbe08c74ce0599c +F src/btree.c e047029ffa66e96c054906e61cbc78d840eca8c0f4fe0022862911c2d742921a F src/btree.h 7af72bbb4863c331c8f6753277ab40ee67d2a2125a63256d5c25489722ec162b F src/btreeInt.h 83166f6daeb91062b6ae9ee6247b3ad07e40eba58f3c05ba9e8dedad4ab1ea38 -F src/build.c 1b8436ed3ac339a0507e61b14e4bd823eb02b76a9499b2241fddc61a5ff38c1a +F src/build.c e3e29c7791a408f7f616f4ea1b2808596014d688094cc048c7c7a93d588a603f F src/callback.c d0b853dd413255d2e337b34545e54d888ea02f20da5ad0e63585b389624c4a6c F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e F src/ctime.c e98518d2d3d4029a13c805e07313fb60c877be56db76e90dd5f3af73085d0ce6 @@ -496,7 +496,7 @@ F src/hash.c 8d7dda241d0ebdafb6ffdeda3149a412d7df75102cecfc1021c98d6219823b19 F src/hash.h 9d56a9079d523b648774c1784b74b89bd93fac7b365210157482e4319a468f38 F src/hwtime.h cb1d7e3e1ed94b7aa6fde95ae2c2daccc3df826be26fc9ed7fd90d1750ae6144 F src/in-operator.md 10cd8f4bcd225a32518407c2fb2484089112fd71 -F src/insert.c c05a7c6f3dbb1a00360b51deac590d4977413078a98334e1650f43223a7d2fc6 +F src/insert.c 8cce522e82d055b936ecec664c0272e38805fa63fa281ab03e97b8e37897a8cb F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa F src/loadext.c 436af4968c6954d304fce9efa12719367bd8f37b19b93b71d6ad607e85adbb47 F src/main.c 5212b0e3d733ef219ebca6712d84203081ac0b3c5e88ec4183fd2dd55a7ca8de @@ -605,9 +605,9 @@ F src/trigger.c ef67bde309a831515dc3c2173d792574309f2f42d45f8c078743fae9f7f98c75 F src/update.c fb15bec5b54fd098f4b84f6abc83c7103b45ba8484011fff8edf5ae31656eab6 F src/upsert.c 2920de71b20f04fe25eb00b655d086f0ba60ea133c59d7fa3325c49838818e78 F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0 -F src/util.c 9ae0b629657ca10abde2f27f5dc3e545cb66d298d111bac062b236a099f8df2d +F src/util.c 7aa93048926824e96043906ed54fa59176c64aa9d674ff097b00f6d5843990e3 F src/vacuum.c 1c4f8e2f39d950037f4cf946b6858c993d3a54c3101f78e05c76460a073afcf0 -F src/vdbe.c 120fdb1add80309cf1b4d6cc88b7f4e0580e816ded743a8f495fff9ef35a4e0a +F src/vdbe.c aeb19f086eb507ac6ba347028fea8265bf8fb66dd9cc2509338693a767612f99 F src/vdbe.h 83603854bfa5851af601fc0947671eb260f4363e62e960e8a994fb9bbcd2aaa1 F src/vdbeInt.h 762abffb7709f19c2cb74af1bba73a900f762e64f80d69c31c9ae89ed1066b60 F src/vdbeapi.c c1a9004ac554d8d48794d2ce5f80397f8e419fd28643a543cc1e004c7713c3ef @@ -619,7 +619,7 @@ F src/vdbetrace.c fa3bf238002f0bbbdfb66cc8afb0cea284ff9f148d6439bc1f6f2b4c3b7143 F src/vdbevtab.c ee5b4c902fdda2230f9503ac7b84c6d614c91e8f6f4dc1633e2e8dfef8ffb144 F src/vtab.c 5f5fc793092f53bbdfde296c50f563fb7bda58cf48e9cf6a8bdfbc5abd409845 F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9 -F src/wal.c 788fc787c608ea9e29a4438f61348b02230dfd538bb0d4ceed704086dc4aec09 +F src/wal.c 093a1fdc83de217d31dae868314b49c324790677bbd99ac0f35c40fa10040749 F src/wal.h c3aa7825bfa2fe0d85bef2db94655f99870a285778baa36307c0a16da32b226a F src/walker.c 3df26a33dc4f54e8771600fb7fdebe1ece0896c2ad68c30ab40b017aa4395049 F src/where.c 2ea911238674e9baaeddf105dddabed92692a01996073c4d4983f9a7efe481f9 @@ -1879,7 +1879,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 969c25bb14fbd99ca8523abf0ae78a75a3dde539e3323d105690aef4940041eb -R 5e98c4cb6c9b78a3e5d40725f8973216 +P 805bb67a82be51dc6077480691ed815c63a37bd8fc00cf7e67e020349c6e322e +R 04d29aa0ebddb0a89a6241304b40c2fa U drh -Z 4cd38b7003d2f733da13812745e0abc4 +Z d770f10134cafeb266d89cfa6d12ba0d diff --git a/manifest.uuid b/manifest.uuid index fa506eb0dd..367542ce06 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -805bb67a82be51dc6077480691ed815c63a37bd8fc00cf7e67e020349c6e322e \ No newline at end of file +1d69eee8b085d514f442840346f001b4785f8ec64f5ba66943e9577b26e2e29c \ No newline at end of file diff --git a/src/btree.c b/src/btree.c index af542f09e5..bfe554ff86 100644 --- a/src/btree.c +++ b/src/btree.c @@ -10150,9 +10150,9 @@ char *sqlite3BtreeIntegrityCheck( BtShared *pBt = p->pBt; u64 savedDbFlags = pBt->db->flags; char zErr[100]; - VVA_ONLY( int nRef ); int bPartial = 0; /* True if not checking all btrees */ int bCkFreelist = 1; /* True to scan the freelist */ + VVA_ONLY( int nRef ); assert( nRoot>0 ); /* aRoot[0]==0 means this is a partial check */ diff --git a/src/build.c b/src/build.c index 65771a71ff..97e9909e03 100644 --- a/src/build.c +++ b/src/build.c @@ -2889,11 +2889,11 @@ static void destroyTable(Parse *pParse, Table *pTab){ ** a free-list page. */ Pgno iTab = pTab->tnum; - int iDestroyed = 0; + Pgno iDestroyed = 0; while( 1 ){ Index *pIdx; - int iLargest = 0; + Pgno iLargest = 0; if( iDestroyed==0 || iTabopcode==OP_OpenRead && pOp->p3==iDb ){ Index *pIndex; - int tnum = pOp->p2; + Pgno tnum = pOp->p2; if( tnum==pTab->tnum ){ return 1; } diff --git a/src/util.c b/src/util.c index 64ab4e95dc..8fbbcfd16d 100644 --- a/src/util.c +++ b/src/util.c @@ -605,7 +605,7 @@ void sqlite3Int64ToText(i64 v, char *zOut){ u64 x; char zTemp[22]; if( v<0 ){ - x = (v==SMALLEST_INT64) ? ((u64)1)<<63 : -v; + x = (v==SMALLEST_INT64) ? ((u64)1)<<63 : (u64)-v; }else{ x = v; } diff --git a/src/vdbe.c b/src/vdbe.c index 5134da4b37..2f156552b0 100644 --- a/src/vdbe.c +++ b/src/vdbe.c @@ -2282,7 +2282,7 @@ case OP_Compare: { } #endif /* SQLITE_DEBUG */ for(i=0; i=2 || iFrame<=HASHTABLE_NPAGE_ONE+HASHTABLE_NPAGE) && (iHash<=2 || iFrame>(HASHTABLE_NPAGE_ONE+2*HASHTABLE_NPAGE)) ); + assert( iHash>=0 ); return iHash; } @@ -1186,8 +1187,8 @@ static int walIndexRecover(Wal *pWal){ u32 magic; /* Magic value read from WAL header */ u32 version; /* Magic value read from WAL header */ int isValid; /* True if this frame is valid */ - int iPg; /* Current 32KB wal-index page */ - int iLastFrame; /* Last frame in wal, based on nSize alone */ + u32 iPg; /* Current 32KB wal-index page */ + u32 iLastFrame; /* Last frame in wal, based on nSize alone */ /* Read in the WAL header. */ rc = sqlite3OsRead(pWal->pWalFd, aBuf, WAL_HDRSIZE, 0); @@ -1244,12 +1245,12 @@ static int walIndexRecover(Wal *pWal){ /* Read all frames from the log file. */ iLastFrame = (nSize - WAL_HDRSIZE) / szFrame; - for(iPg=0; iPg<=walFramePage(iLastFrame); iPg++){ + for(iPg=0; iPg<=(u32)walFramePage(iLastFrame); iPg++){ u32 *aShare; - int iFrame; /* Index of last frame read */ - int iLast = MIN(iLastFrame, HASHTABLE_NPAGE_ONE+iPg*HASHTABLE_NPAGE); - int iFirst = 1 + (iPg==0?0:HASHTABLE_NPAGE_ONE+(iPg-1)*HASHTABLE_NPAGE); - int nHdr, nHdr32; + u32 iFrame; /* Index of last frame read */ + u32 iLast = MIN(iLastFrame, HASHTABLE_NPAGE_ONE+iPg*HASHTABLE_NPAGE); + u32 iFirst = 1 + (iPg==0?0:HASHTABLE_NPAGE_ONE+(iPg-1)*HASHTABLE_NPAGE); + u32 nHdr, nHdr32; rc = walIndexPage(pWal, iPg, (volatile u32**)&aShare); if( rc ) break; pWal->apWiData[iPg] = aPrivate;