]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Apply alignment-related patches suggested in [forum:41cd226375cd49c6 | forum post...
authorstephan <stephan@noemail.net>
Wed, 30 Jul 2025 19:48:12 +0000 (19:48 +0000)
committerstephan <stephan@noemail.net>
Wed, 30 Jul 2025 19:48:12 +0000 (19:48 +0000)
FossilOrigin-Name: 527bbc1676a85a927352cd10a292afe041a72692ec0b1360e5a1ccaa19a32fcb

ext/fts5/fts5_index.c
manifest
manifest.uuid
src/resolve.c
src/trigger.c
src/vdbeInt.h
src/vdbeaux.c
src/wherecode.c
test/fuzzcheck.c

index 182936cda9cb489a75143a003481796b7392ab3d..c54a2337f5e1be912de84fb9d5fb9c0b000b867d 100644 (file)
@@ -6822,10 +6822,13 @@ int sqlite3Fts5IndexRollback(Fts5Index *p){
 */
 int sqlite3Fts5IndexReinit(Fts5Index *p){
   Fts5Structure *pTmp;
-  u8 tmpSpace[SZ_FTS5STRUCTURE(1)];
+  union {
+    u8 tmpSpace[SZ_FTS5STRUCTURE(1)];
+    Fts5Structure sFts;
+  } uFts;
   fts5StructureInvalidate(p);
   fts5IndexDiscardData(p);
-  pTmp = (Fts5Structure*)tmpSpace;
+  pTmp = &uFts.sFts;
   memset(pTmp, 0, SZ_FTS5STRUCTURE(1));
   if( p->pConfig->bContentlessDelete ){
     pTmp->nOriginCntr = 1;
index cffe40c491aa85a912bc8916ff26443efe24071b..60776027ebe41448c33f24ab177d6e795bc1257f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Default\spointer\ssize\sfor\sthe\s__SUNPRO_C\scompiler\sis\s4\sbytes.
-D 2025-07-30T18:23:33.466
+C Apply\salignment-related\spatches\ssuggested\sin\s[forum:41cd226375cd49c6\s|\sforum\spost\s41cd226375].
+D 2025-07-30T19:48:12.580
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -113,7 +113,7 @@ F ext/fts5/fts5_buffer.c f1e6d0324d7c55329d340673befc26681a372a4d36086caa8d1ec7d
 F ext/fts5/fts5_config.c e7d8dd062b44a66cd77e5a0f74f23a2354cd1f3f8575afb967b2773c3384f7f8
 F ext/fts5/fts5_expr.c be9e5f7f11d87e7bd3680832c93c13050fe351994b5052b0215c2ef40312c23a
 F ext/fts5/fts5_hash.c a6266cedd801ab7964fa9e74ebcdda6d30ec6a96107fa24148ec6b7b5b80f6e0
-F ext/fts5/fts5_index.c c1ca58fbc4b323d2153ab42ed787d78d5beb64f5710d0dcb83d94c6ddd184492
+F ext/fts5/fts5_index.c 3581c5db41da98d00c8f8edd310042b9715c8caa09765a48ad63c7941eb5e390
 F ext/fts5/fts5_main.c e558225168845dc708abeb2ad10415696e5a3249bcba1810ba3c7ef80764962e
 F ext/fts5/fts5_storage.c 19bc7c4cbe1e6a2dd9849ef7d84b5ca1fcbf194cefc3e386b901e00e08bf05c2
 F ext/fts5/fts5_tcl.c 7fb5a3d3404099075aaa2457307cb459bbc257c0de3dbd52b1e80a5b503e0329
@@ -784,7 +784,7 @@ F src/pragma.c 30b535d0a66348df844ee36f890617b4cf45e9a22dcbc47ec3ca92909c50aaf1
 F src/prepare.c 1832be043fce7d489959aae6f994c452d023914714c4d5457beaed51c0f3d126
 F src/printf.c 5f0c957af9699e849d786e8fbaa3baab648ca5612230dc17916434c14bc8698f
 F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
-F src/resolve.c e344c0ff75db05acd80a81ab090547d28d0e990f6f411a428d429183a7c73927
+F src/resolve.c b24641d27cb4552005e2de0d2c07bb5dd44c95f32e0bc407479985af75fa01a9
 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
 F src/select.c a6be657216e1fb72f85dad7df0dba0eb79fe76527c08caa65da8fe44f0e4db44
 F src/shell.c.in 7918c9355667b3b348e5850f0dad9095476ef942ee3b96ee9b8bc2710adda1da
@@ -847,7 +847,7 @@ F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9
 F src/threads.c 4ae07fa022a3dc7c5beb373cf744a85d3c5c6c3c
 F src/tokenize.c 8400646d2830afc2f2dc465a75e3a92e4bedeea623f19dbd79c0c12d0dd6dda2
 F src/treeview.c d85ce76e6d1498d781957c07cb234da6d77ce0ed2d196480d516f54dabc62279
-F src/trigger.c 3ffb8ed6b64dbcc0ccae6e82435d01be3bf547e13b814e2d46f7df9bef84748e
+F src/trigger.c 905808ef9c34c7a386f7c3578af0fd216534eda5a06e10d863f574f3cca9abf0
 F src/update.c 3e5e7ff66fa19ebe4d1b113d480639a24cc1175adbefabbd1a948a07f28e37cf
 F src/upsert.c 215328c3f91623c520ec8672c44323553f12caeb4f01b1090ebdca99fdf7b4f1
 F src/utf.c 7267c3fb9e2467020507601af3354c2446c61f444387e094c779dccd5ca62165
@@ -855,9 +855,9 @@ F src/util.c 36fb1150062957280777655976f3f9a75db236cb8207a0770ceae8d5ec17fcd3
 F src/vacuum.c 1bacdd0a81d2b5dc1c508fbf0d938c89fa78dd8d5b46ec92686d44030d4f4789
 F src/vdbe.c a5873cd566a0e2a0344a86dd946add9d34fae3feeae8b126277ef7af8dc11f91
 F src/vdbe.h ea1f1b52f0efe422f80d88da3c57e4eadc72856e29a22f1ff08e502ec6ba5f08
-F src/vdbeInt.h d604607ce8c958fb66b8cb5a6915ba2f09a352c7dc38fee7e3157b951c84eac5
+F src/vdbeInt.h 8f714d6c71c66853b2cf07da6d2fa8e9808931428a3dd14c576adbe2530152b0
 F src/vdbeapi.c f9a4881a9674fec3fa13da35044a1484d3c4b95f9ec891cc8ffb02ef2b7a41df
-F src/vdbeaux.c d5a92c04deb8ec843a2449bc894cb377f0d13f3b6733a2b59d4df9e761c511a9
+F src/vdbeaux.c b701e5920fe74b907eb8211d1f63fef96adc65dfd6e1ad6ed0843c71d8c65205
 F src/vdbeblob.c b3f0640db9642fbdc88bd6ebcc83d6009514cafc98f062f675f2c8d505d82692
 F src/vdbemem.c e67d9c6484d868c879d20c70d00bf4a9058082f1d4058607ca15d50eb3aebc21
 F src/vdbesort.c cb6f472e83ca12c46aa7de0ac0a9d11458b357986f2617a1c90dfb19a542ecbe
@@ -870,7 +870,7 @@ F src/wal.h ba252daaa94f889f4b2c17c027e823d9be47ce39da1d3799886bbd51f0490452
 F src/walker.c d5006d6b005e4ea7302ad390957a8d41ed83faa177e412f89bc5600a7462a014
 F src/where.c f2f075bd17065922235632feb368efe92a7f03d42797eb575267574fbf6d4218
 F src/whereInt.h 8d94cb116c9e06205c3d5ac87af065fc044f8cf08bfdccd94b6ea1c1308e65da
-F src/wherecode.c 2a2d2993fd98c46f525f71b3bfd330fde73d8613aa0ff3e20402dd1fc63470af
+F src/wherecode.c 946edb42491a08672322194459ffcfd0369b89b38e8b4bec8c4463888fe80dd0
 F src/whereexpr.c 78c28a8da187816d5d82049f2e343fb39f4a8e30b5bf1bda9b96cecde40ca8bd
 F src/window.c d01227141f622f24fbe36ca105fbe6ef023f9fd98f1ccd65da95f88886565db5
 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
@@ -1285,7 +1285,7 @@ F test/fuzz3.test 70ba57260364b83e964707b9d4b5625284239768ab907dd387c740c0370ce3
 F test/fuzz4.test c229bcdb45518a89e1d208a21343e061503460ac69fae1539320a89f572eb634
 F test/fuzz_common.tcl b7197de6ed1ee8250a4f82d67876f4561b42ee8cbbfc6160dcb66331bad3f830
 F test/fuzz_malloc.test f348276e732e814802e39f042b1f6da6362a610af73a528d8f76898fde6b22f2
-F test/fuzzcheck.c 19f8af47a5c4ee2c3943fdee270f1f14e3d83fe968a9737a7557fb4e3c06efc1
+F test/fuzzcheck.c 0c9b1b41a13e980ae7c3a44df485faedfb584f7c55f9c1e00a72481801f2c01d
 F test/fuzzdata1.db 3e86d9cf5aea68ddb8e27c02d7dfdaa226347426c7eb814918e4d95475bf8517
 F test/fuzzdata2.db 128b3feeb78918d075c9b14b48610145a0dd4c8d6f1ca7c2870c7e425f5bf31f
 F test/fuzzdata3.db c6586d3e3cef0fbc18108f9bb649aa77bfc38aba
@@ -2213,8 +2213,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P cf7163f82ca380958a79350473b2c5a2cebda7496d6d575fa2835c362010fea1
-R c9df2b0ddadfdaa47f1578f91dd3a1c2
-U drh
-Z c001b62dd840d8c304317580e7a34dde
+P e283d817e3a93a3cd42c7b79e08e5fb61cb4fa4734137b92f1748dbbe8b8b919
+R f3ca06a2bb82df67814293179013369c
+U stephan
+Z 38d94cdfd982403eb4386765bc680165
 # Remove this line to create a well-formed Fossil manifest.
index abe1a78e8b537127ab1b05df047b45b2bda41e91..73bc15fc05e79795d1845f0fea0ca6f977ddd7cd 100644 (file)
@@ -1 +1 @@
-e283d817e3a93a3cd42c7b79e08e5fb61cb4fa4734137b92f1748dbbe8b8b919
+527bbc1676a85a927352cd10a292afe041a72692ec0b1360e5a1ccaa19a32fcb
index f30d1afeb390558ef8a2b31b10fa3a57c0f73297..6029dda0ec2f91fb4e91ef68941d68298fa2e715 100644 (file)
@@ -2283,13 +2283,16 @@ int sqlite3ResolveSelfReference(
   SrcList *pSrc;                  /* Fake SrcList for pParse->pNewTable */
   NameContext sNC;                /* Name context for pParse->pNewTable */
   int rc;
-  u8 srcSpace[SZ_SRCLIST_1];     /* Memory space for the fake SrcList */
+  union {
+    u8 srcSpace[SZ_SRCLIST_1];     /* Memory space for the fake SrcList */
+    SrcList sSrc;
+  } uSrc;
 
   assert( type==0 || pTab!=0 );
   assert( type==NC_IsCheck || type==NC_PartIdx || type==NC_IdxExpr
           || type==NC_GenCol || pTab==0 );
   memset(&sNC, 0, sizeof(sNC));
-  pSrc = (SrcList*)srcSpace;
+  pSrc = &uSrc.sSrc;
   memset(pSrc, 0, SZ_SRCLIST_1);
   if( pTab ){
     pSrc->nSrc = 1;
index 779da5e5fbd0a2b5e514d7637229725eab67d427..a4a652baf5f3c1206cf4c79b8097811170150b9b 100644 (file)
@@ -1040,7 +1040,10 @@ static void codeReturningTrigger(
   Returning *pReturning;
   Select sSelect;
   SrcList *pFrom;
-  u8 fromSpace[SZ_SRCLIST_1];
+  union {
+    u8 fromSpace[SZ_SRCLIST_1];
+    SrcList sSrc;
+  } uSrc;
 
   assert( v!=0 );
   if( !pParse->bReturning ){
@@ -1056,7 +1059,7 @@ static void codeReturningTrigger(
     return;
   }
   memset(&sSelect, 0, sizeof(sSelect));
-  pFrom = (SrcList*)fromSpace;
+  pFrom = &uSrc.sSrc;
   memset(pFrom, 0, SZ_SRCLIST_1);
   sSelect.pEList = sqlite3ExprListDup(db, pReturning->pReturnEL, 0);
   sSelect.pSrc = pFrom;
index 0a944c6d8743bc10d07344a739487d9f08aa0882..856a83764bdc7de9e1bf9dfe4551d05f8259b7c0 100644 (file)
@@ -557,7 +557,10 @@ struct PreUpdate {
   Table *pTab;                    /* Schema object being updated */
   Index *pPk;                     /* PK index if pTab is WITHOUT ROWID */
   sqlite3_value **apDflt;         /* Array of default values, if required */
-  u8 keyinfoSpace[SZ_KEYINFO_0];  /* Space to hold pKeyinfo[0] content */
+  union {
+    u8 keyinfoSpace[SZ_KEYINFO_0];  /* Space to hold pKeyinfo[0] content */
+    KeyInfo sKey;
+  } uKey;
 };
 
 /*
index 94e83d97a5fb99c82dc2b5ccf504afbac94ed1ad..c8b86e6f6db10d2ee9a7d4a83bc97285655c64dc 100644 (file)
@@ -5538,7 +5538,7 @@ void sqlite3VdbePreUpdateHook(
   preupdate.pCsr = pCsr;
   preupdate.op = op;
   preupdate.iNewReg = iReg;
-  preupdate.pKeyinfo = (KeyInfo*)&preupdate.keyinfoSpace;
+  preupdate.pKeyinfo = &preupdate.uKey.sKey;
   preupdate.pKeyinfo->db = db;
   preupdate.pKeyinfo->enc = ENC(db);
   preupdate.pKeyinfo->nKeyField = pTab->nCol;
index 43a669d8150f19252f9774042fbc617b9fe1209c..a1a9c5d8b8ed5d39ac1cde6448555df67ec84d2c 100644 (file)
@@ -2845,7 +2845,10 @@ SQLITE_NOINLINE void sqlite3WhereRightJoinLoop(
   WhereLoop *pLoop = pLevel->pWLoop;
   SrcItem *pTabItem = &pWInfo->pTabList->a[pLevel->iFrom];
   SrcList *pFrom;
-  u8 fromSpace[SZ_SRCLIST_1];
+  union {
+    u8 fromSpace[SZ_SRCLIST_1];
+    SrcList sSrc;
+  } uSrc;
   Bitmask mAll = 0;
   int k;
 
@@ -2889,7 +2892,7 @@ SQLITE_NOINLINE void sqlite3WhereRightJoinLoop(
                                  sqlite3ExprDup(pParse->db, pTerm->pExpr, 0));
     }
   }
-  pFrom = (SrcList*)fromSpace;
+  pFrom = &uSrc.sSrc;
   pFrom->nSrc = 1;
   pFrom->nAlloc = 1;
   memcpy(&pFrom->a[0], pTabItem, sizeof(SrcItem));
index 09898d7b35fc6c6f7e8a3f78260eb58297210785..11b37b12904d57356e50f1d34e3360e96e6f660f 100644 (file)
@@ -541,9 +541,12 @@ static void blobListLoadFromDb(
   int n = 0;
   int rc;
   char *z2;
-  unsigned char tmp[SZ_BLOB(8)];
+  union {
+    unsigned char tmp[SZ_BLOB(8)];
+    Blob * sBlob;
+  } uBlob;
 
-  head = (Blob*)tmp;
+  head = &uBlob.sBlob;
   if( firstId>0 ){
     z2 = sqlite3_mprintf("%s WHERE rowid BETWEEN %d AND %d", zSql,
                          firstId, lastId);