aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
diff options
context:
space:
mode:
authordrh <>2024-07-31 23:46:10 +0000
committerdrh <>2024-07-31 23:46:10 +0000
commita3ee3860a2bef9f44561093b5e39d9160840671b (patch)
treefab970cd979cde29df6ca4ddc1856fd2d6af870d /src/sqliteInt.h
parentc96e47c80e67d3a21c591ccb3432f3c18153f8aa (diff)
parenta1291e79d3d0c8b6aa40b455151b988a92879e17 (diff)
downloadsqlite-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.h18
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