aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2013-11-21 14:33:48 +0000
committerdrh <drh@noemail.net>2013-11-21 14:33:48 +0000
commitb1fba2868b7e1c1932fe7985658ca409e8bbd6da (patch)
tree29990af239aec83f676ef1142896e7a0b3b17dab /src/resolve.c
parente09f43f8b78369852773661c52df015b21ef3932 (diff)
downloadsqlite-b1fba2868b7e1c1932fe7985658ca409e8bbd6da.tar.gz
sqlite-b1fba2868b7e1c1932fe7985658ca409e8bbd6da.zip
Add the ability to factor constant functions out of inner loops. But do
not factor out non-constant functions, like random(). FossilOrigin-Name: 1b0f779e19a5c0d51eddd2d88db50034d77d132c
Diffstat (limited to 'src/resolve.c')
-rw-r--r--src/resolve.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/resolve.c b/src/resolve.c
index b5ba80ec7..999c628c0 100644
--- a/src/resolve.c
+++ b/src/resolve.c
@@ -725,6 +725,7 @@ static int resolveExprStep(Walker *pWalker, Expr *pExpr){
pExpr->op = TK_NULL;
return WRC_Prune;
}
+ if( pDef->funcFlags & SQLITE_FUNC_CONSTANT ) ExprSetProperty(pExpr,EP_Constant);
}
#endif
if( is_agg && (pNC->ncFlags & NC_AllowAgg)==0 ){