Index: src/select.c ================================================================== --- src/select.c +++ src/select.c @@ -3473,10 +3473,13 @@ ExprSetProperty(pNew, EP_CanBeNull); } if( pNew && ExprHasProperty(pExpr,EP_FromJoin) ){ pNew->iRightJoinTable = pExpr->iRightJoinTable; ExprSetProperty(pNew, EP_FromJoin); + } + if( pNew && ExprHasProperty(pExpr,EP_Generic) ){ + ExprSetProperty(pNew, EP_Generic); } sqlite3ExprDelete(db, pExpr); pExpr = pNew; } } Index: test/view.test ================================================================== --- test/view.test +++ test/view.test @@ -758,7 +758,21 @@ SELECT 1 FROM (SELECT t0.c0 AS c0, AVG(t0.c1) AS c1 FROM t0) WHERE c1