]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Continue enforcing the legacy declaration-before-statement C-language rule,
authordrh <>
Wed, 18 Mar 2026 22:31:56 +0000 (22:31 +0000)
committerdrh <>
Wed, 18 Mar 2026 22:31:56 +0000 (22:31 +0000)
since some downstream still uses it.

FossilOrigin-Name: 5c237f1f863a32cf229010d2024d0d1e76a07a4d8b9492b26503b959f1c32485

ext/misc/regexp.c
manifest
manifest.uuid
src/util.c
src/where.c
tool/warnings.sh

index e1826caf3c982b71b1f11b33a7e532eb5224ffda..c5375122f08450f01854507ddc9160db116c9ba1 100644 (file)
@@ -828,7 +828,6 @@ static void re_bytecode_func(
   int i;
   int n;
   char *z;
-  (void)argc;
   static const char *ReOpName[] = {
     "EOF",
     "MATCH",
@@ -851,6 +850,7 @@ static void re_bytecode_func(
     "ATSTART",
   };
 
+  (void)argc;
   zPattern = (const char*)sqlite3_value_text(argv[0]);
   if( zPattern==0 ) return;
   zErr = re_compile(&pRe, zPattern, re_maxnfa(re_maxlen(context)),
index e09be8f5f281683f33ae3f2ba4c3908c5bc782c7..05010612855992667d8025d6691be092418f7b74 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\slogic\sto\ssilently\sand\stransparently\sdeal\swith\sstale\sexpression\sindex\nvalues\swhen\sdeleting\sor\supdate\sa\stable\srow,\sinstead\sof\sreporting\sa\scorrupt\ndatabase.\s\sEnhance\sPRAGMA\sintegrity_check\sto\sidentify\snon-serious\nstale\sexpression\sindex\sentries\sas\ssuch,\srather\sthan\sproclaiming\sthat\sthe\nindexes\sis\sbroken.
-D 2026-03-18T20:17:48.248
+C Continue\senforcing\sthe\slegacy\sdeclaration-before-statement\sC-language\srule,\nsince\ssome\sdownstream\sstill\suses\sit.
+D 2026-03-18T22:31:56.220
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -388,7 +388,7 @@ F ext/misc/percentile.c 72e05a21db20a2fa85264b99515941f00ae698824c9db82d7edfbb16
 F ext/misc/prefixes.c 82645f79229877afab08c8b08ca1e7fa31921280906b90a61c294e4f540cd2a6
 F ext/misc/qpvtab.c fc189e127f68f791af90a487f4460ec91539a716daf45a0c357e963fd47cc06c
 F ext/misc/randomjson.c ef835fc64289e76ac4873b85fe12f9463a036168d7683cf2b773e36e6262c4ed
-F ext/misc/regexp.c 69bd45f6931bdc6801c1059b65a3e8b15ba88255e6abe387a34b653ce17e8908
+F ext/misc/regexp.c fa2d4c479e8bfe8c228d57dd4dde8e4aecb5b0abee70713853dcaa3c52d3fd8a
 F ext/misc/remember.c add730f0f7e7436cd15ea3fd6a90fd83c3f706ab44169f7f048438b7d6baa69c
 F ext/misc/rot13.c 51ac5f51e9d5fd811db58a9c23c628ad5f333c173f1fc53c8491a3603d38556c
 F ext/misc/scrub.c 2a44b0d44c69584c0580ad2553f6290a307a49df4668941d2812135bfb96a946
@@ -797,7 +797,7 @@ F src/trigger.c 4bf3bfb3851d165e4404a9f9e69357345f3f7103378c07e07139fdd8aeb7bd20
 F src/update.c 3e5e7ff66fa19ebe4d1b113d480639a24cc1175adbefabbd1a948a07f28e37cf
 F src/upsert.c 215328c3f91623c520ec8672c44323553f12caeb4f01b1090ebdca99fdf7b4f1
 F src/utf.c 7267c3fb9e2467020507601af3354c2446c61f444387e094c779dccd5ca62165
-F src/util.c 0dbd633bdc509a1c967e4b49b1555820494d936131017634d7dec96c0b8343ce
+F src/util.c 7a4ba925c70380c06279fe14414227c9e23e8797a564cee61241da7ab47cf3d0
 F src/vacuum.c d3d35d8ae893d419ade5fa196d761a83bddcbb62137a1a157ae751ef38b26e82
 F src/vdbe.c 01e380d1847dd934f9c6c73b2bb9df68915b3f917e63244f6f02c95641ca3acb
 F src/vdbe.h 70e862ac8a11b590f8c1eaac17a0078429d42bc4ea3f757a9af0f451dd966a71
@@ -814,7 +814,7 @@ F src/vxworks.h 9d18819c5235b49c2340a8a4d48195ec5d5afb637b152406de95a9436beeaeab
 F src/wal.c 88d94fd15a75f6eda831fa32d1148a267ea37bf0a4b69829a73dfde06244b08f
 F src/wal.h ba252daaa94f889f4b2c17c027e823d9be47ce39da1d3799886bbd51f0490452
 F src/walker.c d5006d6b005e4ea7302ad390957a8d41ed83faa177e412f89bc5600a7462a014
-F src/where.c 406d9ec8d12f646c28c4b4a645ea20329eb343b19cfa3dcd8aab938066c4ae66
+F src/where.c dbaddfdbaddb6f74949fb13c452dc81c543f1c0ece87ecd6582524b5103f4709
 F src/whereInt.h 8d94cb116c9e06205c3d5ac87af065fc044f8cf08bfdccd94b6ea1c1308e65da
 F src/wherecode.c 676cb6cb02878643e817d9917a2d3522b83a3736b2cedd3dc8a01d7bb92af6c2
 F src/whereexpr.c e9f7185fba366d9365aa7a97329609e4cf00b3dd0400d069fbaa5187350c17c6
@@ -2191,12 +2191,11 @@ F tool/vdbe-compress.tcl fa2f37ab39b2a0087fafb6a7f3ce19503e25e624ffa8ed9951717ab
 F tool/vdbe_profile.tcl 3ac5a4a9449f4baf77059358ea050db3e34395ccf59c5464d29b91746d5b961e
 F tool/version-info.c 33d0390ef484b3b1cb685d59362be891ea162123cea181cb8e6d2cf6ddf2700c
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
-F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98
+F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
 F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
-P ed29fe973e6cbf291eff6fc582aeb34556ea4f8df105ec61b361e4cdda017e62 e0fa7c500052af9d36cb2d232131ef93361403187f4a60f53279b102c7a95860
-R 26ade8ca132e7215ac38ba62aa36e2a7
-T +closed e0fa7c500052af9d36cb2d232131ef93361403187f4a60f53279b102c7a95860
+P 0ed040128b7ebb5be438b1841607ed9c525b271cac81021bc356cf573d1cd516
+R a75aa214db84be6ac02e6aea8c773e8c
 U drh
-Z db3c9769fb8ffa82bf7a8a46fc08c9cd
+Z 09d0cda01676f0ea240a2ce1a1243393
 # Remove this line to create a well-formed Fossil manifest.
index cfc8132ce50a5c1451f657edcf8f330d8b52702e..9cbf5a7737f617aa7a03128014a0a953c4d3f288 100644 (file)
@@ -1 +1 @@
-0ed040128b7ebb5be438b1841607ed9c525b271cac81021bc356cf573d1cd516
+5c237f1f863a32cf229010d2024d0d1e76a07a4d8b9492b26503b959f1c32485
index fab7a3063f1f2b3c29e674ddcc53ecf548589dbb..33eea8b06a383d7191de15e4a10b8ca837396659 100644 (file)
@@ -751,44 +751,45 @@ static void sqlite3Fp2Convert10(u64 m, int e, int n, u64 *pD, int *pP){
 ** Return an IEEE754 floating point value that approximates d*pow(10,p).
 */
 static double sqlite3Fp10Convert2(u64 d, int p){
+  int b, lp, e, adj, s;
+  u32 pwr10l, mid1;
+  u64 pwr10h, x, hi, lo, sticky, u, m;
+  double r;
   if( p<POWERSOF10_FIRST ) return 0.0;
   if( p>POWERSOF10_LAST ) return INFINITY;
-  int b = 64 - countLeadingZeros(d);
-  int lp = pwr10to2(p);
-  int e = 53 - b - lp;
+  b = 64 - countLeadingZeros(d);
+  lp = pwr10to2(p);
+  e = 53 - b - lp;
   if( e > 1074 ){
     if( e>=1130 ) return 0.0;
     e = 1074;
   }
-  int s = -(e-(64-b) + lp + 3);
-  u32 pwr10l;
-  u64 pwr10h = powerOfTen(p, &pwr10l);
+  s = -(e-(64-b) + lp + 3);
+  pwr10h = powerOfTen(p, &pwr10l);
   if( pwr10l!=0 ){
     pwr10h++;
     pwr10l = ~pwr10l;
   }
-  u64 x = d<<(64-b);
-  u64 lo;
-  u64 hi = sqlite3Multiply128(x,pwr10h,&lo);
-  u32 mid1 = lo>>32;
-  u64 sticky = 1;
+  x = d<<(64-b);
+  hi = sqlite3Multiply128(x,pwr10h,&lo);
+  mid1 = lo>>32;
+  sticky = 1;
   if( (hi & (U64_BIT(s)-1))==0 ) {
     u32 mid2 = sqlite3Multiply128(x,((u64)pwr10l)<<32,&lo)>>32;
     sticky = (mid1-mid2 > 1);
     hi -= mid1 < mid2;
   }
-  u64 u = (hi>>s) | sticky;
-  int adj = (u >= U64_BIT(55)-2);
+  u = (hi>>s) | sticky;
+  adj = (u >= U64_BIT(55)-2);
   if( adj ){
     u = (u>>adj) | (u&1);
     e -= adj;
   }
-  u64 m = (u + 1 + ((u>>2)&1)) >> 2;
+  m = (u + 1 + ((u>>2)&1)) >> 2;
   if( e<=(-972) ) return INFINITY;
   if((m & U64_BIT(52)) != 0){
     m = (m & ~U64_BIT(52)) | ((u64)(1075-e)<<52);
   }
-  double r;
   memcpy(&r,&m,8);
   return r;
 }
index 085ba8aa8d0cb22815c3ab0c2daf893f5b4848ed..1ee91fb3a1e582a5f5deaaed3c168012403bc0e7 100644 (file)
@@ -2449,11 +2449,16 @@ void sqlite3WhereClausePrint(WhereClause *pWC){
 void sqlite3WhereLoopPrint(const WhereLoop *p, const WhereClause *pWC){
   WhereInfo *pWInfo;
   if( pWC ){
+    int nb;
+    SrcItem *pItem;
+    Table *pTab;
+    Bitmask mAll;
+
     pWInfo = pWC->pWInfo;
-    int nb = 1+(pWInfo->pTabList->nSrc+3)/4;
-    SrcItem *pItem = pWInfo->pTabList->a + p->iTab;
-    Table *pTab = pItem->pSTab;
-    Bitmask mAll = (((Bitmask)1)<<(nb*4)) - 1;
+    nb = 1+(pWInfo->pTabList->nSrc+3)/4;
+    pItem = pWInfo->pTabList->a + p->iTab;
+    pTab = pItem->pSTab;
+    mAll = (((Bitmask)1)<<(nb*4)) - 1;
     sqlite3DebugPrintf("%c%2d.%0*llx.%0*llx", p->cId,
                        p->iTab, nb, p->maskSelf, nb, p->prereq & mAll);
     sqlite3DebugPrintf(" %12s",
index 3619ce70a3f3dbb5345665c572fd9c7ba5468947..4bf0ac9a7d5e3dd21f748153659bb4245fca6253 100644 (file)
@@ -68,6 +68,7 @@ gcc -c $WARNING_OPTS -std=c99 \
 echo '**** Optimized -O3.  Includes FTS4/5, GEOPOLY, JSON1 ******'
 echo '****' $WARNING_OPTS
 gcc -O3 -c $WARNING_OPTS -std=c99 \
+      -Wdeclaration-after-statement \
       -DHAVE_STDINT_H \
       -DSQLITE_ENABLE_FTS4 \
       -DSQLITE_ENABLE_FTS5 \