diff options
author | drh <> | 2021-12-31 19:20:42 +0000 |
---|---|---|
committer | drh <> | 2021-12-31 19:20:42 +0000 |
commit | 54bc63815a14bc0c47d3d3f1bbecdf9eddd4feff (patch) | |
tree | 93b86abb615803b19188d7ce88f8c0269876694a /src/tokenize.c | |
parent | c158c07a22566cdd67670c14687d708b25126cb6 (diff) | |
download | sqlite-54bc63815a14bc0c47d3d3f1bbecdf9eddd4feff.tar.gz sqlite-54bc63815a14bc0c47d3d3f1bbecdf9eddd4feff.zip |
Simplify the sqlite3RunParser() routine by omitting the third parameter.
Results in a binary that is about 100 bytes smaller and 1.4M cycles faster.
FossilOrigin-Name: 6fb2a1bb0280d6e31291e3fd06bbcbbb28ef5fb27d3898e2327a50ac738ae1f3
Diffstat (limited to 'src/tokenize.c')
-rw-r--r-- | src/tokenize.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/tokenize.c b/src/tokenize.c index a1fa2333d..5f41e5665 100644 --- a/src/tokenize.c +++ b/src/tokenize.c @@ -559,13 +559,9 @@ int sqlite3GetToken(const unsigned char *z, int *tokenType){ } /* -** Run the parser on the given SQL string. The parser structure is -** passed in. An SQLITE_ status code is returned. If an error occurs -** then an and attempt is made to write an error message into -** memory obtained from sqlite3_malloc() and to make *pzErrMsg point to that -** error message. +** Run the parser on the given SQL string. */ -int sqlite3RunParser(Parse *pParse, const char *zSql, char **pzErrMsg){ +int sqlite3RunParser(Parse *pParse, const char *zSql){ int nErr = 0; /* Number of errors encountered */ void *pEngine; /* The LEMON-generated LALR(1) parser */ int n = 0; /* Length of the next token token */ @@ -586,7 +582,6 @@ int sqlite3RunParser(Parse *pParse, const char *zSql, char **pzErrMsg){ } pParse->rc = SQLITE_OK; pParse->zTail = zSql; - assert( pzErrMsg!=0 ); #ifdef SQLITE_DEBUG if( db->flags & SQLITE_ParserTrace ){ printf("parser: [[[%s]]]\n", zSql); @@ -629,6 +624,7 @@ int sqlite3RunParser(Parse *pParse, const char *zSql, char **pzErrMsg){ #endif /* SQLITE_OMIT_WINDOWFUNC */ if( AtomicLoad(&db->u1.isInterrupted) ){ pParse->rc = SQLITE_INTERRUPT; + pParse->nErr++; break; } if( tokenType==TK_SPACE ){ @@ -686,15 +682,11 @@ int sqlite3RunParser(Parse *pParse, const char *zSql, char **pzErrMsg){ if( db->mallocFailed ){ pParse->rc = SQLITE_NOMEM_BKPT; } - assert( pzErrMsg!=0 ); if( pParse->zErrMsg || (pParse->rc!=SQLITE_OK && pParse->rc!=SQLITE_DONE) ){ if( pParse->zErrMsg==0 ){ pParse->zErrMsg = sqlite3MPrintf(db, "%s", sqlite3ErrStr(pParse->rc)); } - *pzErrMsg = pParse->zErrMsg; - sqlite3_log(pParse->rc, "%s in \"%s\"", - *pzErrMsg, pParse->zTail); - pParse->zErrMsg = 0; + sqlite3_log(pParse->rc, "%s in \"%s\"", pParse->zErrMsg, pParse->zTail); nErr++; } pParse->zTail = zSql; |