Andreas Kupries wrote:
Ticket #2457 reports difficulty building SQLite version 3.4.0
using MSVC++ 6.0. This appears to be a bug in MSVC++. See the
comments on the ticket for details:
http://www.sqlite.org/cvstrac/tktview?tn=2457
I do not own MSVC++ (and have no intention of acquiring a copy)
so I am unable to reproduce. On the other hand, Version 3.4.0
has been out for a week and there have been no other reports
of problems, so I am somewhat suspicious that this problem is
specific to the specific installation.
Can anybody shed any light on ticket #2457? Can anybody else
reproduce the problem or suggest a work-around?
Error in MSVC 6.0 -- the user who wrote the ticket hasn't installed the
latest service pack of VC6.
http://support.microsoft.com/kb/890892
The article sounds like a very likely match (large macros).
Just retrieved and installed VC6 SP6, rebooted the machine ... The compiler
now reports a different build number, higher than before, so I guess really
did not have that ServicePack before ...
Compiling the original sources (not the ones I messed with) ... I however
still run into the same internal compiler error, in the same line of code.
The problem is actually linked to the optimizations in the release code.
If you compile it without optimizations (for example, in Debug mode), it
compiles successfully.
I made some tests, and you can compile all the rest of the files (if you
don't use the amalgamation file) with release flags; and you can even
compile btree.c if you do the following:
- Select btree.c
- Right-click the file in the FileView and select 'Settings' from the menu
- Select the 'C/C++' tab on the right
- Select 'Customize' in the Optimizations box
- Mark all the check boxes in the list, EXCEPT for:
Assume Aliasing Across Function Calls*
Favor Small Code
- Select the Online _inline option in the inline functions box
- Click OK
Now it should compile (my VC6 with SP6 compiler reads Version 12.00.8804).
As this is just an optimization that fails, the code should work.
* The actual problem is with this option. It can probably be turned of
specifically for this file using a VC6 macro
-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------