From: drh Date: Wed, 9 Dec 2009 21:43:36 +0000 (+0000) Subject: Restore the incorrect legacy ON INSERT syntax to the parser as a no-op. X-Git-Tag: version-3.7.2~722 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c29c5aa1fd71145666f95aea6b1e91274dde760a;p=thirdparty%2Fsqlite.git Restore the incorrect legacy ON INSERT syntax to the parser as a no-op. That way, older databases that actually use this meaningless syntax will still be readable. FossilOrigin-Name: 54b955c36ba5c139a63c6031855305b764d3fa6c --- diff --git a/manifest b/manifest index e00feb2221..9a24acab78 100644 --- a/manifest +++ b/manifest @@ -1,8 +1,8 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -C Added\stest\scases\sfor\sthe\smulti-way\sUSING\sand\sNATURAL\sJOIN\sfix.\nTicket\s[f74beaabde]. -D 2009-12-09T18:22:26 +C Restore\sthe\sincorrect\slegacy\sON\sINSERT\ssyntax\sto\sthe\sparser\sas\sa\sno-op.\nThat\sway,\solder\sdatabases\sthat\sactually\suse\sthis\smeaningless\ssyntax\swill\nstill\sbe\sreadable. +D 2009-12-09T21:43:36 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in c5827ead754ab32b9585487177c93bb00b9497b3 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -155,7 +155,7 @@ F src/os_unix.c fe85acfeded5cc13c2340ab73c9baf841de4e6d9 F src/os_win.c 5ffab20249a61e0625f869efe157fa009747039b F src/pager.c a0ed14b86de9d012a962b83389ca01003b6acccb F src/pager.h 1b32faf2e578ac3e7bcf9c9d11217128261c5c54 -F src/parse.y b172fba9a954855502271556497c440506b6daf4 +F src/parse.y ace5c7a125d9f2a410e431ee3209034105045f7e F src/pcache.c 3b079306376e0e04c0d3df40c0a4b750a1839310 F src/pcache.h c683390d50f856d4cd8e24342ae62027d1bb6050 F src/pcache1.c 2bb2261190b42a348038f5b1c285c8cef415fcc8 @@ -781,14 +781,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f -P b558e96f0a3cd2cbbe86e44293246a4730960d52 -R d48154f167a2f5947eeb454b81ead26e +P 0b34ab25624ae4b6c5fa7775328ff0e637d68bfc +R 69d8516ac3c662ad4387737fbcf18321 U drh -Z 7f30d93b88a976a99962a65cb7bf933c +Z 9d097325245768e9b1c22f4f9e8a8349 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) -iD8DBQFLH+rloxKgR168RlERAipCAJoDEPJ2CB4vx4FRHD7ORIIm3oYMigCfcAU2 -TDhyrsWyv+tbEU9Iq98mh90= -=fxWS +iD8DBQFLIBoKoxKgR168RlERAv7vAJ47adx4GTBd5EeLPemVNhz7ib6fswCfWqdn +fNs3XqqAXVNlExIdfceQcGc= +=aeaG -----END PGP SIGNATURE----- diff --git a/manifest.uuid b/manifest.uuid index 5d01ddc333..a6934e376a 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -0b34ab25624ae4b6c5fa7775328ff0e637d68bfc \ No newline at end of file +54b955c36ba5c139a63c6031855305b764d3fa6c \ No newline at end of file diff --git a/src/parse.y b/src/parse.y index f1c4216dcf..98714ee343 100644 --- a/src/parse.y +++ b/src/parse.y @@ -316,6 +316,7 @@ refargs(A) ::= . { A = OE_None*0x0101; /* EV: R-19803-45884 */} refargs(A) ::= refargs(X) refarg(Y). { A = (X & ~Y.mask) | Y.value; } %type refarg {struct {int value; int mask;}} refarg(A) ::= MATCH nm. { A.value = 0; A.mask = 0x000000; } +refarg(A) ::= ON INSERT refact. { A.value = 0; A.mask = 0x000000; } refarg(A) ::= ON DELETE refact(X). { A.value = X; A.mask = 0x0000ff; } refarg(A) ::= ON UPDATE refact(X). { A.value = X<<8; A.mask = 0x00ff00; } %type refact {int}