The expression "(x IS FALSE) IS FALSE" does not imply that X is not NULL.
Ticket [a6408d42b9f44462]
FossilOrigin-Name: 45ff2b1f2693bb0231a864a511bb82cf2a5945ab3d806a5bbaf1517ecb287883
diff --git a/src/expr.c b/src/expr.c
index b6b204a..46aea5f 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -5036,7 +5036,7 @@
case TK_TRUTH: {
if( seenNot ) return 0;
if( p->op2!=TK_IS ) return 0;
- return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, seenNot);
+ return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, 1);
}
case TK_BITNOT:
case TK_NOT: {