mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-08 14:02:16 +03:00
Encode a 64-bit integer literal in date.c as a constant expression so that
it works on older compilers. Also fix a harmless compiler warning in vdbe.c. FossilOrigin-Name: f57952bac652901e1bd48b68301941efbcf29dc4
This commit is contained in:
14
manifest
14
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Fix\sharmless\scompiler\swarnings\sin\sthe\scommand-line\sshell\sand\sin\sLemon.
|
C Encode\sa\s64-bit\sinteger\sliteral\sin\sdate.c\sas\sa\sconstant\sexpression\sso\sthat\nit\sworks\son\solder\scompilers.\s\sAlso\sfix\sa\sharmless\scompiler\swarning\sin\svdbe.c.
|
||||||
D 2016-12-29T19:48:46.056
|
D 2016-12-30T00:09:14.046
|
||||||
F Makefile.in 41bd4cad981487345c4a84081074bcdb876e4b2e
|
F Makefile.in 41bd4cad981487345c4a84081074bcdb876e4b2e
|
||||||
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
||||||
F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da
|
F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da
|
||||||
@@ -338,7 +338,7 @@ F src/build.c 9e799f1edd910dfa8a0bc29bd390d35d310596af
|
|||||||
F src/callback.c 2e76147783386374bf01b227f752c81ec872d730
|
F src/callback.c 2e76147783386374bf01b227f752c81ec872d730
|
||||||
F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
|
F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
|
||||||
F src/ctime.c 9f2296a4e5d26ebf0e0d95a0af4628f1ea694e7a
|
F src/ctime.c 9f2296a4e5d26ebf0e0d95a0af4628f1ea694e7a
|
||||||
F src/date.c b48378aeac68fa20c811404955a9b62108df47d8
|
F src/date.c dc3f1391d9297f8c748132813aaffcb117090d6e
|
||||||
F src/dbstat.c 19ee7a4e89979d4df8e44cfac7a8f905ec89b77d
|
F src/dbstat.c 19ee7a4e89979d4df8e44cfac7a8f905ec89b77d
|
||||||
F src/delete.c c8bc10d145c9666a34ae906250326fdaa8d58fa5
|
F src/delete.c c8bc10d145c9666a34ae906250326fdaa8d58fa5
|
||||||
F src/expr.c a90e37bc542abe33890cafccacbf8a7db9cb5401
|
F src/expr.c a90e37bc542abe33890cafccacbf8a7db9cb5401
|
||||||
@@ -455,7 +455,7 @@ F src/update.c 1da7c462110bffed442a42884cb0d528c1db46d8
|
|||||||
F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c
|
F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c
|
||||||
F src/util.c 1534060bc034cdc51381c040c8bd6252dbcb64c9
|
F src/util.c 1534060bc034cdc51381c040c8bd6252dbcb64c9
|
||||||
F src/vacuum.c 33c174b28886b2faf26e503b5a49a1c01a9b1c16
|
F src/vacuum.c 33c174b28886b2faf26e503b5a49a1c01a9b1c16
|
||||||
F src/vdbe.c a35ad51713d9be42f97e80f24cd4be5d20886a0c
|
F src/vdbe.c 88bd6c32b333580d2661ac3afe33369757fb1522
|
||||||
F src/vdbe.h 50ee139f9c68fff91be1d717ed3a6abbd496919c
|
F src/vdbe.h 50ee139f9c68fff91be1d717ed3a6abbd496919c
|
||||||
F src/vdbeInt.h 281cb70332dc8b593b8c7afe776f3a2ba7d4255e
|
F src/vdbeInt.h 281cb70332dc8b593b8c7afe776f3a2ba7d4255e
|
||||||
F src/vdbeapi.c d6ebaa465f070eb1af8ba4e7b34583ece87bdd24
|
F src/vdbeapi.c d6ebaa465f070eb1af8ba4e7b34583ece87bdd24
|
||||||
@@ -1540,7 +1540,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P a7dca29f03e037fe71cc600db97f8058e3bd28a4
|
P afcdc4a60e357d171156e0de705bf7ad1b37daab
|
||||||
R a5cb3a1af480c7a18023eb7f338349d2
|
R 813e73c67c9aeca5cd69ce74ed137efb
|
||||||
U drh
|
U drh
|
||||||
Z e569fcc83d59a51062b98f5f55226d42
|
Z 3112948a79a12b2a077d364cd13de4f8
|
||||||
|
@@ -1 +1 @@
|
|||||||
afcdc4a60e357d171156e0de705bf7ad1b37daab
|
f57952bac652901e1bd48b68301941efbcf29dc4
|
11
src/date.c
11
src/date.c
@@ -395,13 +395,22 @@ static int parseDateOrTime(
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* The julian day number for 9999-12-31 23:59:59.999 is 5373484.4999999.
|
||||||
|
** Multiplying this by 86400000 gives 464269060799999 as the maximum value
|
||||||
|
** for DateTime.iJD.
|
||||||
|
**
|
||||||
|
** But some older compilers (ex: gcc 4.2.1 on older Macs) cannot deal with
|
||||||
|
** such a large integer literal, so we have to encode it.
|
||||||
|
*/
|
||||||
|
#define INT_464269060799999 ((((i64)0x1a640)<<32)|0x1072fdff)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Return TRUE if the given julian day number is within range.
|
** Return TRUE if the given julian day number is within range.
|
||||||
**
|
**
|
||||||
** The input is the JulianDay times 86400000.
|
** The input is the JulianDay times 86400000.
|
||||||
*/
|
*/
|
||||||
static int validJulianDay(sqlite3_int64 iJD){
|
static int validJulianDay(sqlite3_int64 iJD){
|
||||||
return iJD>=0 && iJD<=464269060799999;
|
return iJD>=0 && iJD<=INT_464269060799999;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -977,7 +977,7 @@ case OP_Halt: {
|
|||||||
p->rc = pOp->p1;
|
p->rc = pOp->p1;
|
||||||
p->errorAction = (u8)pOp->p2;
|
p->errorAction = (u8)pOp->p2;
|
||||||
p->pc = pcx;
|
p->pc = pcx;
|
||||||
assert( pOp->p5>=0 && pOp->p5<=4 );
|
assert( pOp->p5<=4 );
|
||||||
if( p->rc ){
|
if( p->rc ){
|
||||||
if( pOp->p5 ){
|
if( pOp->p5 ){
|
||||||
static const char * const azType[] = { "NOT NULL", "UNIQUE", "CHECK",
|
static const char * const azType[] = { "NOT NULL", "UNIQUE", "CHECK",
|
||||||
|
Reference in New Issue
Block a user