My thinking is that something before line 27461 in sqlite3.c which changed between versions 3.16.2 and 3.17.0 has bumped into a conflict with something defined for your compiler on that computer (e.g. from a Windows header file).
If so, you should still be able to compile 3.16.2, which you can download from whichever of these links you need: https://www.sqlite.org/2017/sqlite-amalgamation-3160200.zip https://www.sqlite.org/2017/sqlite-autoconf-3160200.tar.gz > On 15/02/2017, at 11:15 AM, Bart Smissaert <bart.smissa...@gmail.com> wrote: > > The strange thing is that nil changed other than moving from version 3.16.2 > to 3.17.0. > There is no serious problem as I can compile on the other PC, but would > like to figure out what is going on here. > Will see if I can look at the pre-processor output. > > RBS > > > On Tue, Feb 14, 2017 at 10:07 PM, David Empson <demp...@emptech.co.nz> > wrote: > >>> On 15/02/2017, at 10:23 AM, Bart Smissaert <bart.smissa...@gmail.com> >> wrote: >>> >>> -c sqlite3.c >>> sqlite3.c >>> sqlite3.c(16114) : error C2059: syntax error : 'if' >>> sqlite3.c(16117) : error C2059: syntax error : '}' >>> sqlite3.c(27461) : error C2143: syntax error : missing ';' before '{' >>> sqlite3.c(27464) : error C2065: 'db' : undeclared identifier >> >> >> A clue which might help: the error output shows a constant stream of >> problems starting at line 27461, which is in the function just after the >> first use of SQLITE_SKIP_UTF8, in sqlite3Utf8CharLen(), on line 27418. The >> errors reported for lines 16114 and 16117 (in the definition of that macro) >> are probably related to the expansion of that macro, not its definition, >> and the compiler has got lost after line 27418, resulting in cascading >> errors. >> >> I had a quick look at the raw hex data of my expansion of the autoconf >> copy of sqlite3.c and I can’t see anything around the macro definition or >> expansion which looks like it might confuse a C compiler. Line endings are >> 0x0A (LF, UNIX \n) and everything appears to be ASCII. >> >> As it seems this is only happening on one computer for one person, and >> assuming the source file is not a bad copy on that computer, I’d suspect >> the compiler installation or perhaps some configuration for the compiler >> which is not overridden by the makefile, which is resulting in abnormal >> behaviour (e.g. it may have a nonstandard include search path, or some >> extra preprocessor symbols defined). >> >> If reinstalling the compiler doesn’t help, perhaps have a look at the >> preprocessor output to see what it is actually trying to compile around >> source line 27418? >> >> _______________________________________________ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> > _______________________________________________ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users -- David Empson demp...@emptech.co.nz _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users