"Richard Hipp" wrote...
> Version 3.8.6 was originally scheduled for September. But the change log
> (
> http://www.sqlite.org/draft/releaselog/current.html) is getting rather
> long
> and there are a number of important bug fixes. So we might try to get
> 3.8.6 out the door sooner rather than later.
>
> Please test! Recent amalgamations are available on the download page (
> http://www.sqlite.org/download.html). Please compile your applications
> use
> the latest tip of trunk and let us know if you encounter any problems.
>
> Please review the change log and speak up if you see anything amiss.
>
> The status board (http://www.sqlite.org/checklists/3080600/index) for the
> 3.8.6 release is now on-line. The usual rule applies: When the
> check-list
> goes all-green, we will cut the release. No check-list items have been
> marked off yet, but we might start marking them off later this week, or
> early next week.
>
> Your feedback is greatly appreciated.
The new wrapping of InterlockedCompareExchange introduced in 3.8.6 breaks
compilation in Visual C++ 2013 (and the "14" CTPs) for X86 and X64, as this
function is implemented as an intrinsic in these compilers.
When linking the amalgamation to a program I get a linker error:
sqlite3.lib(sqlite3.obj) : error LNK2001: unresolved external symbol
__InterlockedCompareExchange
In the newer SDK versions used by this compiler there is a:
#define InterlockedCompareExchange _InterlockedCompareExchange
(via winbase.h)
Which triggers the use of the intrinsic. (Older versions of the compiler appear
to have the intrinsic, but by default their SDKs don't use it)
As I assume this is required for the testing framework, an easy fix might be to
just undefine 'InterlockedCompareExchange'.
(I haven't tested this myself yet)
Bert
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users