1
1
Sqlite3 built as follows:
2
2
3
- 1. Download recent version from http://www.sqlite.org/sqlite-amalgamation-3070701 .zip
3
+ 1. Download recent version from http://www.sqlite.org/sqlite-amalgamation-3070800 .zip
4
4
5
5
2. Unzip the file
6
6
@@ -14,11 +14,12 @@ sqlite3ext.h
14
14
3. Edit: sqlite3.c and add the following lines to the start of it:
15
15
16
16
// These first few lines added by NJG
17
- // version 3.7.7.1
17
+ // version 3.7.8
18
18
# pragma warning (disable : 4018) // signed/unsigned mismatch
19
19
# pragma warning (disable : 4022) // pointer mismatch for actual parameter x
20
20
# pragma warning (disable : 4047) // 'void ** ' differs in levels of indirection from 'long *'
21
21
# pragma warning (disable : 4049) // terminating line number emission
22
+ # pragma warning (disable : 4056) // overflow in floating-point constant arithmetic
22
23
# pragma warning (disable : 4100) // unreferenced formal parameter
23
24
# pragma warning (disable : 4115) // named type definition in parentheses
24
25
# pragma warning (disable : 4127) // conditional expression is constant
@@ -28,6 +29,7 @@ sqlite3ext.h
28
29
# pragma warning (disable : 4701) // 'xxx' may be used without having been initialized
29
30
# pragma warning (disable : 4702) // unreachable code
30
31
# pragma warning (disable : 4706) // assignment within conditional expression
32
+ # pragma warning (disable : 4756) // overflow in constant arithmetic
31
33
# pragma warning (disable : 4761) // integral size mismatch in argument; conversion supplied
32
34
33
35
#define SQLITE_SOUNDEX 1
@@ -36,3 +38,27 @@ sqlite3ext.h
36
38
#define SQLITE_ENABLE_RTREE 1
37
39
#define SQLITE_USE_URI 1
38
40
41
+
42
+
43
+ Note: added patch:
44
+
45
+ http://www.sqlite.org/src/ci/59bb999c8b?sbs=0
46
+
47
+
48
+ @@ -379,10 +379,16 @@
49
+ result = s / scale;
50
+ result /= 1.0e+308;
51
+ }else{
52
+ result = s * scale;
53
+ result *= 1.0e+308;
54
+ + }
55
+ + }else if( e>=342 ){
56
+ + if( esign<0 ){
57
+ + result = 0.0*s;
58
+ + }else{
59
+ + result = 1e308*1e308*s; /* Infinity */
60
+ }
61
+ }else{
62
+ /* 1.0e+22 is the largest power of 10 than can be
63
+ ** represented exactly. */
64
+ while( e%22 ) { scale *= 1.0e+1; e -= 1; }
0 commit comments