mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-09 14:21:03 +03:00
Testing coverage enhancements to sqlite3_get_table() and to the SELECT
code generator. (CVS 4746) FossilOrigin-Name: 45c59802f6d35c7745b96c578ab43d5a336fe822
This commit is contained in:
17
src/expr.c
17
src/expr.c
@@ -12,7 +12,7 @@
|
||||
** This file contains routines used for analyzing expressions and
|
||||
** for generating VDBE code that evaluates expressions in SQLite.
|
||||
**
|
||||
** $Id: expr.c,v 1.351 2008/01/19 23:50:26 drh Exp $
|
||||
** $Id: expr.c,v 1.352 2008/01/23 14:51:49 drh Exp $
|
||||
*/
|
||||
#include "sqliteInt.h"
|
||||
#include <ctype.h>
|
||||
@@ -2922,14 +2922,9 @@ static int analyzeAggregate(void *pArg, Expr *pExpr){
|
||||
**
|
||||
** This routine should only be called after the expression has been
|
||||
** analyzed by sqlite3ExprResolveNames().
|
||||
**
|
||||
** If errors are seen, leave an error message in zErrMsg and return
|
||||
** the number of errors.
|
||||
*/
|
||||
int sqlite3ExprAnalyzeAggregates(NameContext *pNC, Expr *pExpr){
|
||||
int nErr = pNC->pParse->nErr;
|
||||
void sqlite3ExprAnalyzeAggregates(NameContext *pNC, Expr *pExpr){
|
||||
walkExprTree(pExpr, analyzeAggregate, pNC);
|
||||
return pNC->pParse->nErr - nErr;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -2938,16 +2933,14 @@ int sqlite3ExprAnalyzeAggregates(NameContext *pNC, Expr *pExpr){
|
||||
**
|
||||
** If an error is found, the analysis is cut short.
|
||||
*/
|
||||
int sqlite3ExprAnalyzeAggList(NameContext *pNC, ExprList *pList){
|
||||
void sqlite3ExprAnalyzeAggList(NameContext *pNC, ExprList *pList){
|
||||
struct ExprList_item *pItem;
|
||||
int i;
|
||||
int nErr = 0;
|
||||
if( pList ){
|
||||
for(pItem=pList->a, i=0; nErr==0 && i<pList->nExpr; i++, pItem++){
|
||||
nErr += sqlite3ExprAnalyzeAggregates(pNC, pItem->pExpr);
|
||||
for(pItem=pList->a, i=0; i<pList->nExpr; i++, pItem++){
|
||||
sqlite3ExprAnalyzeAggregates(pNC, pItem->pExpr);
|
||||
}
|
||||
}
|
||||
return nErr;
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user