Task #120026 - sqlite-3.51.2-1.fc44/scan-results.err
back to task #120026download
Error: COMPILER_WARNING (CWE-704):
sqlite-src-3510200/autosetup/jimsh0.c: scope_hint: In function ‘aio_cmd_gets’
sqlite-src-3510200/autosetup/jimsh0.c:2643:16: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
# 2643 | nl = memchr(pt + offset, '\n', len - offset);
# | ^
# 2641| if (af->readbuf) {
# 2642| const char *pt = Jim_GetString(af->readbuf, &len);
# 2643|-> nl = memchr(pt + offset, '\n', len - offset);
# 2644| if (nl) {
# 2645|
Error: CPPCHECK_WARNING (CWE-457):
sqlite-src-3510200/autosetup/jimsh0.c:21485: warning[uninitvar]: Uninitialized variable: params
#21483| len += extra;
#21484| buf = Jim_Alloc(len + 1);
#21485|-> len = snprintf(buf, len + 1, format, params[0], params[1], params[2], params[3], params[4]);
#21486|
#21487| va_end(args);
Error: COMPILER_WARNING (CWE-686):
sqlite-src-3510200/conftest__.c:1:13: warning[-Wbuiltin-declaration-mismatch]: conflicting types for built-in function ‘ceil’; expected ‘double(double)’
# 1 | extern void ceil(void);
# | ^~~~
sqlite-src-3510200/conftest__.c:1:1: note: ‘ceil’ is declared in header ‘<math.h>’
# +++ |+#include <math.h>
# 1 | extern void ceil(void);
Error: COMPILER_WARNING (CWE-686):
sqlite-src-3510200/conftest__.c:1:13: warning[-Wbuiltin-declaration-mismatch]: conflicting types for built-in function ‘ceil’; expected ‘double(double)’
Error: COMPILER_WARNING (CWE-686):
sqlite-src-3510200/conftest__.c:1:13: warning[-Wbuiltin-declaration-mismatch]: conflicting types for built-in function ‘isnan’; expected ‘int()’
# 1 | extern void isnan(void);
# | ^~~~~
sqlite-src-3510200/conftest__.c:1:1: note: ‘isnan’ is declared in header ‘<math.h>’
# +++ |+#include <math.h>
# 1 | extern void isnan(void);
Error: COMPILER_WARNING (CWE-686):
sqlite-src-3510200/conftest__.c:1:13: warning[-Wbuiltin-declaration-mismatch]: conflicting types for built-in function ‘isnan’; expected ‘int()’
Error: COMPILER_WARNING (CWE-563):
sqlite-src-3510200/conftest__.c: scope_hint: In function ‘main’
sqlite-src-3510200/conftest__.c:3:8: warning[-Wunused-variable]: unused variable ‘_x’
# 3 | int8_t _x;
# | ^~
Error: COMPILER_WARNING (CWE-563):
sqlite-src-3510200/conftest__.c: scope_hint: In function ‘main’
sqlite-src-3510200/conftest__.c:3:9: warning[-Wunused-variable]: unused variable ‘_x’
# 3 | int16_t _x;
# | ^~
Error: COMPILER_WARNING (CWE-563):
sqlite-src-3510200/conftest__.c: scope_hint: In function ‘main’
sqlite-src-3510200/conftest__.c:3:10: warning[-Wunused-variable]: unused variable ‘_x’
# 3 | intptr_t _x;
# | ^~
Error: COMPILER_WARNING (CWE-563):
sqlite-src-3510200/conftest__.c: scope_hint: In function ‘main’
sqlite-src-3510200/conftest__.c:3:11: warning[-Wunused-variable]: unused variable ‘_x’
# 3 | uintptr_t _x;
# | ^~
Error: COMPILER_WARNING (CWE-563):
sqlite-src-3510200/conftest__.c:3:12: warning[-Wunused-variable]: unused variable ‘_x’
Error: COMPILER_WARNING (CWE-704):
sqlite-src-3510200/sqlite3.c: scope_hint: In function ‘sqlite3ShadowTableName’
sqlite-src-3510200/sqlite3.c:126922:9: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#126922 | zTail = strrchr(zName, '_');
# | ^
#126920| char *zTail; /* Pointer to the last "_" in zName */
#126921| Table *pTab; /* Table that zName is a shadow of */
#126922|-> zTail = strrchr(zName, '_');
#126923| if( zTail==0 ) return 0;
#126924| *zTail = 0;
Error: COMPILER_WARNING (CWE-704):
sqlite-src-3510200/sqlite3.c: scope_hint: In function ‘unistrFunc’
sqlite-src-3510200/sqlite3.c:132952:15: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
#132952 | char *z = strchr(&zIn[i],'\\');
# | ^~~~~~
#132950| i = j = 0;
#132951| while( i<nIn ){
#132952|-> char *z = strchr(&zIn[i],'\\');
#132953| if( z==0 ){
#132954| n = nIn - i;
Error: COMPILER_WARNING:
sqlite-src-3510200/sqlite3.c: scope_hint: In function ‘sqlite3Pragma’
sqlite-src-3510200/sqlite3.c:144320:13: warning[-Wunused-but-set-variable=]: variable ‘nIdx’ set but not used
#144320 | int nIdx; /* Number of indexes on pTab */
# | ^~~~
#144318| Table *pTab = sqliteHashData(x); /* Current table */
#144319| Index *pIdx; /* An index on pTab */
#144320|-> int nIdx; /* Number of indexes on pTab */
#144321| if( tableSkipIntegrityCheck(pTab,pObjTab) ) continue;
#144322| if( HasRowid(pTab) ) cnt++;
Error: COMPILER_WARNING (CWE-704):
sqlite-src-3510200/sqlite3_analyzer.c: scope_hint: In function ‘sqlite3ShadowTableName’
sqlite-src-3510200/sqlite3_analyzer.c:126946:9: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#126946 | zTail = strrchr(zName, '_');
# | ^
#126944| char *zTail; /* Pointer to the last "_" in zName */
#126945| Table *pTab; /* Table that zName is a shadow of */
#126946|-> zTail = strrchr(zName, '_');
#126947| if( zTail==0 ) return 0;
#126948| *zTail = 0;
Error: COMPILER_WARNING (CWE-704):
sqlite-src-3510200/sqlite3_analyzer.c: scope_hint: In function ‘unistrFunc’
sqlite-src-3510200/sqlite3_analyzer.c:132976:15: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
#132976 | char *z = strchr(&zIn[i],'\\');
# | ^~~~~~
#132974| i = j = 0;
#132975| while( i<nIn ){
#132976|-> char *z = strchr(&zIn[i],'\\');
#132977| if( z==0 ){
#132978| n = nIn - i;
Error: COMPILER_WARNING:
sqlite-src-3510200/sqlite3_analyzer.c: scope_hint: In function ‘sqlite3Pragma’
sqlite-src-3510200/sqlite3_analyzer.c:144344:13: warning[-Wunused-but-set-variable=]: variable ‘nIdx’ set but not used
#144344 | int nIdx; /* Number of indexes on pTab */
# | ^~~~
#144342| Table *pTab = sqliteHashData(x); /* Current table */
#144343| Index *pIdx; /* An index on pTab */
#144344|-> int nIdx; /* Number of indexes on pTab */
#144345| if( tableSkipIntegrityCheck(pTab,pObjTab) ) continue;
#144346| if( HasRowid(pTab) ) cnt++;
Error: COMPILER_WARNING (CWE-1164):
sqlite-src-3510200/sqlite3_analyzer.c: scope_hint: At top level
sqlite-src-3510200/sqlite3_analyzer.c:190277:21: warning[-Wunused-function]: ‘sqlite3ConnectionBlocked’ defined but not used
#190277 | SQLITE_PRIVATE void sqlite3ConnectionBlocked(sqlite3 *db, sqlite3 *pBlocker){
# | ^~~~~~~~~~~~~~~~~~~~~~~~
#190275| ** until connection pBlocker concludes its current transaction.
#190276| */
#190277|-> SQLITE_PRIVATE void sqlite3ConnectionBlocked(sqlite3 *db, sqlite3 *pBlocker){
#190278| enterMutex();
#190279| if( db->pBlockingConnection==0 && db->pUnlockConnection==0 ){
Error: GCC_ANALYZER_WARNING (CWE-476):
sqlite-src-3510200/src/tclsqlite.c:1717:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘apColName’
sqlite-src-3510200/src/tclsqlite.c:2051:26: enter_function: entry to ‘DbObjCmd’
sqlite-src-3510200/src/tclsqlite.c:2095:5: branch_false: following ‘false’ branch (when ‘objc > 1’)...
sqlite-src-3510200/src/tclsqlite.c:2099:7: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:2099:5: branch_false: following ‘false’ branch...
sqlite-src-3510200/src/tclsqlite.c:2103:11: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:2934:7: branch_false: following ‘false’ branch...
sqlite-src-3510200/src/tclsqlite.c:2940:7: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:2940:7: branch_false: following ‘false’ branch (when ‘objc != 3’)...
sqlite-src-3510200/src/tclsqlite.c:2965:9: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:2972:7: call_function: calling ‘dbEvalInit’ from ‘DbObjCmd’
sqlite-src-3510200/src/tclsqlite.c:2972:7: return_function: returning to ‘DbObjCmd’ from ‘dbEvalInit’
sqlite-src-3510200/src/tclsqlite.c:2976:12: call_function: calling ‘DbEvalNextCmd’ from ‘DbObjCmd’
# 1715| Tcl_IncrRefCount(pStar);
# 1716| for(i=0; i<nCol; i++){
# 1717|-> Tcl_ListObjAppendElement(interp, pColList, apColName[i]);
# 1718| }
# 1719| if( 0==(SQLITE_EVAL_ASDICT & p->evalFlags) ){
Error: GCC_ANALYZER_WARNING (CWE-476):
sqlite-src-3510200/src/tclsqlite.c:2015:7: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘ppHook’
sqlite-src-3510200/src/tclsqlite.c:2051:26: enter_function: entry to ‘DbObjCmd’
sqlite-src-3510200/src/tclsqlite.c:2095:5: branch_false: following ‘false’ branch (when ‘objc > 1’)...
sqlite-src-3510200/src/tclsqlite.c:2099:7: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:2099:5: branch_false: following ‘false’ branch...
sqlite-src-3510200/src/tclsqlite.c:2103:11: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:3753:7: branch_false: following ‘false’ branch...
sqlite-src-3510200/src/tclsqlite.c:3754:7: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:3754:7: branch_false: following ‘false’ branch...
sqlite-src-3510200/src/tclsqlite.c:3755:7: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:3755:7: branch_false: following ‘false’ branch...
sqlite-src-3510200/src/tclsqlite.c:3756:7: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:3756:7: branch_false: following ‘false’ branch (when ‘objc <= 3’)...
sqlite-src-3510200/src/tclsqlite.c:3761:5: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:3761:5: branch_false: following ‘false’ branch (when ‘objc != 3’)...
sqlite-src-3510200/src/tclsqlite.c:3761:5: branch_false: ...to here
sqlite-src-3510200/src/tclsqlite.c:3761:5: call_function: calling ‘DbHookCmd’ from ‘DbObjCmd’
# 2013| sqlite3 *db = pDb->db;
# 2014|
# 2015|-> if( *ppHook ){
# 2016| Tcl_SetObjResult(interp, *ppHook);
# 2017| if( pArg ){
Error: GCC_ANALYZER_WARNING (CWE-686):
sqlite-src-3510200/tool/lemon.c:188:13: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘char *’ for variadic argument 1 of ‘ap’
sqlite-src-3510200/tool/lemon.c:4414:6: enter_function: entry to ‘ReportTable’
sqlite-src-3510200/tool/lemon.c:4442:8: call_function: calling ‘tplt_open’ from ‘ReportTable’
# 186| }
# 187| if( c=='d' ){
# 188|-> int v = va_arg(ap, int);
# 189| if( v<0 ){
# 190| lemon_addtext(str, &nUsed, "-", 1, iWidth);
Error: GCC_ANALYZER_WARNING (CWE-686):
sqlite-src-3510200/tool/lemon.c:188:13: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘const char *’ for variadic argument 1 of ‘ap’
sqlite-src-3510200/tool/lemon.c:3972:13: enter_function: entry to ‘translate_code’
sqlite-src-3510200/tool/lemon.c:3997:5: branch_false: following ‘false’ branch...
sqlite-src-3510200/tool/lemon.c:4000:13: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4000:11: branch_false: following ‘false’ branch...
sqlite-src-3510200/tool/lemon.c:4011:13: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4011:11: branch_false: following ‘false’ branch...
sqlite-src-3510200/tool/lemon.c:4014:13: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4014:11: branch_false: following ‘false’ branch (when the strings are non-equal)...
sqlite-src-3510200/tool/lemon.c:4028:5: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4028:5: call_function: calling ‘lemon_sprintf’ from ‘translate_code’ with 2 variadic arguments
# 186| }
# 187| if( c=='d' ){
# 188|-> int v = va_arg(ap, int);
# 189| if( v<0 ){
# 190| lemon_addtext(str, &nUsed, "-", 1, iWidth);
Error: GCC_ANALYZER_WARNING (CWE-686):
sqlite-src-3510200/tool/lemon.c:203:9: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘const char *’ but received ‘int’ for variadic argument 1 of ‘ap’
sqlite-src-3510200/tool/lemon.c:4414:6: enter_function: entry to ‘ReportTable’
sqlite-src-3510200/tool/lemon.c:4442:8: call_function: calling ‘tplt_open’ from ‘ReportTable’
# 201| lemon_addtext(str, &nUsed, &zTemp[sizeof(zTemp)-k], k, iWidth);
# 202| }else if( c=='s' ){
# 203|-> z = va_arg(ap, const char*);
# 204| lemon_addtext(str, &nUsed, z, -1, iWidth);
# 205| }else if( c=='.' && memcmp(&zFormat[i], ".*s", 3)==0 ){
Error: GCC_ANALYZER_WARNING (CWE-686):
sqlite-src-3510200/tool/lemon.c:207:9: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘char *’ for variadic argument 1 of ‘ap’
sqlite-src-3510200/tool/lemon.c:4414:6: enter_function: entry to ‘ReportTable’
sqlite-src-3510200/tool/lemon.c:4442:8: call_function: calling ‘tplt_open’ from ‘ReportTable’
# 205| }else if( c=='.' && memcmp(&zFormat[i], ".*s", 3)==0 ){
# 206| i += 2;
# 207|-> k = va_arg(ap, int);
# 208| z = va_arg(ap, const char*);
# 209| lemon_addtext(str, &nUsed, z, k, iWidth);
Error: GCC_ANALYZER_WARNING (CWE-686):
sqlite-src-3510200/tool/lemon.c:207:9: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘const char *’ for variadic argument 1 of ‘ap’
sqlite-src-3510200/tool/lemon.c:3972:13: enter_function: entry to ‘translate_code’
sqlite-src-3510200/tool/lemon.c:3997:5: branch_false: following ‘false’ branch...
sqlite-src-3510200/tool/lemon.c:4000:13: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4000:11: branch_false: following ‘false’ branch...
sqlite-src-3510200/tool/lemon.c:4011:13: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4011:11: branch_false: following ‘false’ branch...
sqlite-src-3510200/tool/lemon.c:4014:13: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4014:11: branch_false: following ‘false’ branch (when the strings are non-equal)...
sqlite-src-3510200/tool/lemon.c:4028:5: branch_false: ...to here
sqlite-src-3510200/tool/lemon.c:4028:5: call_function: calling ‘lemon_sprintf’ from ‘translate_code’ with 2 variadic arguments
# 205| }else if( c=='.' && memcmp(&zFormat[i], ".*s", 3)==0 ){
# 206| i += 2;
# 207|-> k = va_arg(ap, int);
# 208| z = va_arg(ap, const char*);
# 209| lemon_addtext(str, &nUsed, z, k, iWidth);
Error: GCC_ANALYZER_WARNING (CWE-476):
sqlite-src-3510200/tool/lemon.c:5554:16: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘x’
sqlite-src-3510200/tool/lemon.c:5545:16: enter_function: entry to ‘Symbol_new’
sqlite-src-3510200/tool/lemon.c:5550:5: branch_true: following ‘true’ branch...
sqlite-src-3510200/tool/lemon.c:5551:27: branch_true: ...to here
sqlite-src-3510200/tool/lemon.c:5551:27: call_function: calling ‘lemon_calloc’ from ‘Symbol_new’
sqlite-src-3510200/tool/lemon.c:5551:27: return_function: returning to ‘Symbol_new’ from ‘lemon_calloc’
sqlite-src-3510200/tool/lemon.c:5553:16: call_function: calling ‘Strsafe’ from ‘Symbol_new’
sqlite-src-3510200/tool/lemon.c:5553:16: return_function: returning to ‘Symbol_new’ from ‘Strsafe’
sqlite-src-3510200/tool/lemon.c:5553:5: release_memory: ‘x’ is NULL
sqlite-src-3510200/tool/lemon.c:5554:16: danger: dereference of NULL ‘x’
# 5552| MemoryCheck(sp);
# 5553| sp->name = Strsafe(x);
# 5554|-> sp->type = ISUPPER(*x) ? TERMINAL : NONTERMINAL;
# 5555| sp->rule = 0;
# 5556| sp->fallback = 0;
Error: GCC_ANALYZER_WARNING (CWE-401):
sqlite-src-3510200/tool/lemon.c:6012:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
sqlite-src-3510200/tool/lemon.c:1424:16: enter_function: entry to ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: call_function: calling ‘newconfig’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: return_function: returning to ‘Configlist_add’ from ‘newconfig’
sqlite-src-3510200/tool/lemon.c:1438:16: call_function: calling ‘SetNew’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1438:16: return_function: returning to ‘Configlist_add’ from ‘SetNew’
sqlite-src-3510200/tool/lemon.c:1445:5: call_function: calling ‘Configtable_insert’ from ‘Configlist_add’
# 6010| h = confighash(oldnp->data) & (arrSize-1);
# 6011| newnp = &(array.tbl[i]);
# 6012|-> if( array.ht[h] ) array.ht[h]->from = &(newnp->next);
# 6013| newnp->next = array.ht[h];
# 6014| newnp->data = oldnp->data;
Error: GCC_ANALYZER_WARNING (CWE-401):
sqlite-src-3510200/tool/lemon.c:6016:7: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
sqlite-src-3510200/tool/lemon.c:1424:16: enter_function: entry to ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: call_function: calling ‘newconfig’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: return_function: returning to ‘Configlist_add’ from ‘newconfig’
sqlite-src-3510200/tool/lemon.c:1438:16: call_function: calling ‘SetNew’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1438:16: return_function: returning to ‘Configlist_add’ from ‘SetNew’
sqlite-src-3510200/tool/lemon.c:1445:5: call_function: calling ‘Configtable_insert’ from ‘Configlist_add’
# 6014| newnp->data = oldnp->data;
# 6015| newnp->from = &(array.ht[h]);
# 6016|-> array.ht[h] = newnp;
# 6017| }
# 6018| *x4a = array;
Error: GCC_ANALYZER_WARNING (CWE-401):
sqlite-src-3510200/tool/lemon.c:6024:20: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
sqlite-src-3510200/tool/lemon.c:1424:16: enter_function: entry to ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: call_function: calling ‘newconfig’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: return_function: returning to ‘Configlist_add’ from ‘newconfig’
sqlite-src-3510200/tool/lemon.c:1438:16: call_function: calling ‘SetNew’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1438:16: return_function: returning to ‘Configlist_add’ from ‘SetNew’
sqlite-src-3510200/tool/lemon.c:1445:5: call_function: calling ‘Configtable_insert’ from ‘Configlist_add’
# 6022| np = &(x4a->tbl[x4a->count++]);
# 6023| np->data = data;
# 6024|-> if( x4a->ht[h] ) x4a->ht[h]->from = &(np->next);
# 6025| np->next = x4a->ht[h];
# 6026| x4a->ht[h] = np;
Error: GCC_ANALYZER_WARNING (CWE-401):
sqlite-src-3510200/tool/lemon.c:6026:3: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
sqlite-src-3510200/tool/lemon.c:1424:16: enter_function: entry to ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: call_function: calling ‘newconfig’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1435:11: return_function: returning to ‘Configlist_add’ from ‘newconfig’
sqlite-src-3510200/tool/lemon.c:1438:16: call_function: calling ‘SetNew’ from ‘Configlist_add’
sqlite-src-3510200/tool/lemon.c:1438:16: return_function: returning to ‘Configlist_add’ from ‘SetNew’
sqlite-src-3510200/tool/lemon.c:1445:5: call_function: calling ‘Configtable_insert’ from ‘Configlist_add’
# 6024| if( x4a->ht[h] ) x4a->ht[h]->from = &(np->next);
# 6025| np->next = x4a->ht[h];
# 6026|-> x4a->ht[h] = np;
# 6027| np->from = &(x4a->ht[h]);
# 6028| return 1;
Error: COMPILER_WARNING:
sqlite-src-3510200/tool/sqldiff.c: scope_hint: In function ‘all_tables_sql’
sqlite-src-3510200/tool/sqldiff.c:1823:9: warning[-Wunused-but-set-variable=]: variable ‘rc’ set but not used
# 1823 | int rc;
# | ^~
# 1821| const char *all_tables_sql(){
# 1822| if( g.bHandleVtab ){
# 1823|-> int rc;
# 1824|
# 1825| rc = sqlite3_exec(g.db,