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

Reply via email to