From 7815214b6cbc7bb43fdebd65aa05caccf445815e Mon Sep 17 00:00:00 2001 From: drh <> Date: Mon, 12 Oct 2026 21:24:29 +0000 Subject: [PATCH] An unknown function can be seen in exprNodeCanReturnSubtype(), but only if SQLite is compiled with SQLITE_ENABLE_UNKNOWN_SQL_FUNCTIONS. Adjust asserts accordingly. FossilOrigin-Name: dcf20611cdd4a250531d0e753144ab1b6796635331bb906df0e174aea4bd4158 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/expr.c | 7 ++++++- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/manifest b/manifest index 96f392e90c..a5c83539e8 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Failed\sto\sincrease\sthe\smemory\sallocation\ssize\sas\srequired\sin\sthe\sprevious\ncheck-in.\s\sFixed\shere. -D 2026-10-12T20:12:35.632 +C An\sunknown\sfunction\scan\sbe\sseen\sin\sexprNodeCanReturnSubtype(),\sbut\sonly\nif\sSQLite\sis\scompiled\swith\sSQLITE_ENABLE_UNKNOWN_SQL_FUNCTIONS.\s\sAdjust\nasserts\saccordingly. +D 2026-10-12T21:24:29.331 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -752,7 +752,7 @@ F src/date.c 080641f59097d14fc7341f8bc0458d273b3a62d8381916db8ccbc89c2aae07b3 F src/dbpage.c ec8590c5e7a564cef28ca3c6156521316a4d26cb572a34841b0bcb26b67b3f97 F src/dbstat.c 34d4e825fbf763640ce3dbc56910ab080495ef4a6efb48b2b1852a43d43763fc F src/delete.c 59eeca3fb88c29329afc41bb803ee568b120d9dd7470b5f38ab55cc38390b451 -F src/expr.c b80229730263f70ef39a7ca46f847df6c124ec3bd7de43ba570b994757d51d9f +F src/expr.c b02c1ae0014ba03a6384c2666c80fa561df46ab5f73f83a6e79cd82f65c7e73e F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007 F src/fkey.c 26788ae6c785d70f9829c4176e9764447014fc73e6ba31e9f1881720a64ae7f1 F src/func.c 54d96eeafcb6ec4cff92028ea0f7bb09e27b375b248d969aeb80a61e560ef302 @@ -2285,8 +2285,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P 51f69864e716501cae4f756a158256cefa38482bf9dcdf29f7eedf9f1af8752c -R 1c4ea80ff1f6ed0d3fce54465e28285c +P 7b827c44ab843248b66de6fb753aad83af153085d501462b138954ceca7fee81 +R ade8985437b50a2e56e14a3954f8e317 U drh -Z c5218a678e61c2040cc7f243690c486b +Z 4a20ae8ecf4e3ae1d676ccb681a9f0bb # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 28834618bf..94bf2a3cad 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -7b827c44ab843248b66de6fb753aad83af153085d501462b138954ceca7fee81 +dcf20611cdd4a250531d0e753144ab1b6796635331bb906df0e174aea4bd4158 diff --git a/src/expr.c b/src/expr.c index 9ec6be07ec..ada86beaf9 100644 --- a/src/expr.c +++ b/src/expr.c @@ -4825,7 +4825,12 @@ static int exprNodeCanReturnSubtype(Walker *pWalker, Expr *pExpr){ db = pWalker->pParse->db; n = pExpr->x.pList ? pExpr->x.pList->nExpr : 0; pDef = sqlite3FindFunction(db, pExpr->u.zToken, n, ENC(db), 0); - if( NEVER(pDef==0) || (pDef->funcFlags & SQLITE_RESULT_SUBTYPE)!=0 ){ +#ifdef SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION + if( pDef==0 ) return WRC_Continue; +#else + assert( pDef!=0 ); +#endif + if( (pDef->funcFlags & SQLITE_RESULT_SUBTYPE)!=0 ){ pWalker->eCode = 1; return WRC_Abort; }