diff options
author | drh <> | 2024-07-31 23:46:10 +0000 |
---|---|---|
committer | drh <> | 2024-07-31 23:46:10 +0000 |
commit | a3ee3860a2bef9f44561093b5e39d9160840671b (patch) | |
tree | fab970cd979cde29df6ca4ddc1856fd2d6af870d /src/sqliteInt.h | |
parent | c96e47c80e67d3a21c591ccb3432f3c18153f8aa (diff) | |
parent | a1291e79d3d0c8b6aa40b455151b988a92879e17 (diff) | |
download | sqlite-a3ee3860a2bef9f44561093b5e39d9160840671b.tar.gz sqlite-a3ee3860a2bef9f44561093b5e39d9160840671b.zip |
Merge all the latest trunk enhancements into the exists-to-join branch.
FossilOrigin-Name: 9084a4c8726a2c7ba1c381886e29c7b86121d531282be0d63d5988d84f6f448d
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 44914065c..bfe0bf94b 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -143,10 +143,13 @@ /* ** Macro to disable warnings about missing "break" at the end of a "case". */ -#if GCC_VERSION>=7000000 -# define deliberate_fall_through __attribute__((fallthrough)); -#else -# define deliberate_fall_through +#if defined(__has_attribute) +# if __has_attribute(fallthrough) +# define deliberate_fall_through __attribute__((fallthrough)); +# endif +#endif +#if !defined(deliberate_fall_through) +# define deliberate_fall_through #endif /* @@ -3621,7 +3624,11 @@ struct Select { ** SRT_Set The result must be a single column. Store each ** row of result as the key in table pDest->iSDParm. ** Apply the affinity pDest->affSdst before storing -** results. Used to implement "IN (SELECT ...)". +** results. if pDest->iSDParm2 is positive, then it is +** a regsiter holding a Bloom filter for the IN operator +** that should be populated in addition to the +** pDest->iSDParm table. This SRT is used to +** implement "IN (SELECT ...)". ** ** SRT_EphemTab Create an temporary table pDest->iSDParm and store ** the result there. The cursor is left open after @@ -3830,6 +3837,7 @@ struct Parse { u8 withinRJSubrtn; /* Nesting level for RIGHT JOIN body subroutines */ u8 bHasWith; /* True if statement contains WITH */ u8 bHasExists; /* Has a correlated "EXISTS (SELECT ....)" expression */ + u8 mSubrtnSig; /* mini Bloom filter on available SubrtnSig.selId */ #if defined(SQLITE_DEBUG) || defined(SQLITE_COVERAGE_TEST) u8 earlyCleanup; /* OOM inside sqlite3ParserAddCleanup() */ #endif |