]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Factor the UMINUS and UPLUS tokens out of the parser so that the parser
authordrh <drh@noemail.net>
Tue, 22 Sep 2009 20:08:34 +0000 (20:08 +0000)
committerdrh <drh@noemail.net>
Tue, 22 Sep 2009 20:08:34 +0000 (20:08 +0000)
tables can go back to using 8-bit values instead of 16-bit values.

FossilOrigin-Name: 3fc938c961fd7810594224b91a2d6e1ac9e48084

addopcodes.awk
manifest
manifest.uuid
src/parse.y

index 9c21417190a3bec6b4209e09e2169cb22720aa6c..66d6e19baa3fc4c4d603012d2332fe222963d532 100644 (file)
@@ -28,4 +28,6 @@ END {
   printf "#define TK_%-29s %4d\n", "AGG_FUNCTION",    ++max
   printf "#define TK_%-29s %4d\n", "AGG_COLUMN",      ++max
   printf "#define TK_%-29s %4d\n", "CONST_FUNC",      ++max
+  printf "#define TK_%-29s %4d\n", "UMINUS",          ++max
+  printf "#define TK_%-29s %4d\n", "UPLUS",           ++max
 }
index 43120ac915eccdd0bd697d4b2cdb352e7c8e362a..e7db2c5897302e349b45e7bba1dbeb832c302280 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,8 +1,8 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-C The\sNO\sACTION\saction\sreally\sshould\sbe\sno-action\sand\snot\sRESTRICT.
-D 2009-09-22T19:53:41
+C Factor\sthe\sUMINUS\sand\sUPLUS\stokens\sout\sof\sthe\sparser\sso\sthat\sthe\sparser\ntables\scan\sgo\sback\sto\susing\s8-bit\svalues\sinstead\sof\s16-bit\svalues.
+D 2009-09-22T20:08:35
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in 4ca3f1dd6efa2075bcb27f4dc43eef749877740d
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -10,7 +10,7 @@ F Makefile.vxworks 10010ddbf52e2503c7c49c7c0b7c7a096f8638a6
 F README cd04a36fbc7ea56932a4052d7d0b7f09f27c33d6
 F VERSION 7260e7baf934051dee42458206e915b75570f41d
 F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50
-F addopcodes.awk 215333be9d99c260e076c3080a81dba3ae928c45
+F addopcodes.awk 08eb3bdfef10a131530e3ad7fa1a6902a52dad15
 F art/2005osaward.gif 0d1851b2a7c1c9d0ccce545f3e14bca42d7fd248
 F art/SQLite.eps 9b43cc99cfd2be687d386faea6862ea68d6a72b2
 F art/SQLite.gif 1bbb94484963f1382e27e1c5e86dd0c1061eba2b
@@ -153,7 +153,7 @@ F src/os_unix.c 5369272992c14dd198c02ddfc2fd7a1516906c40
 F src/os_win.c 49a360be4f42d5a63d00be9aa44449ed4d6717e0
 F src/pager.c ebd0a8f2421e8f0ad5b78201440004bf3e1c96d8
 F src/pager.h 11852d044c86cf5a9d6e34171fb0c4fcf1f6265f
-F src/parse.y e2a89b59361dc8d67628a2f4a7325f3085a0bd0f
+F src/parse.y 749f39fa218418a19c46970336c2343214e2fe05
 F src/pcache.c c92ffd4f3e1279b3766854c6d18b5bf4aac0d1fa
 F src/pcache.h 435ef324197f79391f9c92b71d7f92b548ad7a36
 F src/pcache1.c 211295a9ff6a5b30f1ca50516731a5cf3e9bf82c
@@ -756,14 +756,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P e2bc51bc61d54d103ccffd12106c27a574e4e997
-R d17b5b16742509067b4e4d0466de4ca3
+P 55b263fa2b2fed8c721154e3c48f4226be95065c
+R eef40f23e9c60a6f8dbfd20ac239494a
 U drh
-Z 7fa412630def87c8c760586082e5742d
+Z a26ff37b38b185f4ba103e5a00635dcb
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.6 (GNU/Linux)
 
-iD8DBQFKuStIoxKgR168RlERAtgiAJ42i+YBSmXedbj83Npi2WGtORYGJACdF3Qs
-gW3hqQbVtK4/JWi52ExtfYs=
-=EU8f
+iD8DBQFKuS7GoxKgR168RlERArmIAJ9Zh9EPcETkJ903DGxflMeqs+sSrQCfRsQh
+N09u5KCVOpvUNYJvUIHJJug=
+=Nr38
 -----END PGP SIGNATURE-----
index 48853fc2812bf729d03c6e9d57f714bc49f96392..d94e23f4ce270b15f027a02e0f7ff2785c5cc644 100644 (file)
@@ -1 +1 @@
-55b263fa2b2fed8c721154e3c48f4226be95065c
\ No newline at end of file
+3fc938c961fd7810594224b91a2d6e1ac9e48084
\ No newline at end of file
index f3ea25e08771994f6d16cae4ed2082134cbf8311..f6682285961b06111b15da0244ef32de096b0b6c 100644 (file)
@@ -230,7 +230,7 @@ id(A) ::= INDEXED(X).    {A = X;}
 %left STAR SLASH REM.
 %left CONCAT.
 %left COLLATE.
-%right UMINUS UPLUS BITNOT.
+%right BITNOT.
 
 // And "ids" is an identifer-or-string.
 //
@@ -909,9 +909,9 @@ expr(A) ::= expr(X) IS NOT NULL(E).
 
 expr(A) ::= NOT(B) expr(X).    {spanUnaryPrefix(&A,pParse,@B,&X,&B);}
 expr(A) ::= BITNOT(B) expr(X). {spanUnaryPrefix(&A,pParse,@B,&X,&B);}
-expr(A) ::= MINUS(B) expr(X). [UMINUS]
+expr(A) ::= MINUS(B) expr(X). [BITNOT]
                                {spanUnaryPrefix(&A,pParse,TK_UMINUS,&X,&B);}
-expr(A) ::= PLUS(B) expr(X). [UPLUS]
+expr(A) ::= PLUS(B) expr(X). [BITNOT]
                                {spanUnaryPrefix(&A,pParse,TK_UPLUS,&X,&B);}
 
 %type between_op {int}