]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Make yypMinor available to the stack overflow callbacks in lemon
authordrh <drh@noemail.net>
Fri, 30 Mar 2007 13:35:05 +0000 (13:35 +0000)
committerdrh <drh@noemail.net>
Fri, 30 Mar 2007 13:35:05 +0000 (13:35 +0000)
generated parsers.  This does not effect SQLite. (CVS 3761)

FossilOrigin-Name: 70c8c7e2ce5213778e63c200a6637849920deea6

manifest
manifest.uuid
tool/lempar.c

index 12a413f601db697a74b138c55f00399e2f3721ac..685da9f8442c3038d881b2ce38695d0f78dca969 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Avoid\susing\sthe\s"clock"\scommand\sin\stest\sscripts\ssince\sit\sis\sa\sproc\sin\sTcl8.5\nand\sis\sthus\snot\savailable\sto\stestfixture.\s(CVS\s3760)
-D 2007-03-30T13:01:32
+C Make\syypMinor\savailable\sto\sthe\sstack\soverflow\scallbacks\sin\slemon\ngenerated\sparsers.\s\sThis\sdoes\snot\seffect\sSQLite.\s(CVS\s3761)
+D 2007-03-30T13:35:06
 F Makefile.in 2f2c3bf69faf0ae7b8e8af4f94f1986849034530
 F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -376,7 +376,7 @@ F test/where4.test b68496500bff496e83e76ae4ffb493b99064eac6
 F tool/diffdb.c 7524b1b5df217c20cd0431f6789851a4e0cb191b
 F tool/fragck.tcl 5265a95126abcf6ab357f7efa544787e5963f439
 F tool/lemon.c c8c8b25ab1ac8156b3ad83ba4ea1bf00d5e07f5a
-F tool/lempar.c 707cc8d6085075e7e7c8d33c716f0bb7f9180dee
+F tool/lempar.c 20851553530657c766dfb1358b0d443ed2d9c26f
 F tool/memleak.awk 4e7690a51bf3ed757e611273d43fe3f65b510133
 F tool/memleak2.awk 9cc20c8e8f3c675efac71ea0721ee6874a1566e8
 F tool/memleak3.tcl 7707006ee908cffff210c98158788d85bb3fcdbf
@@ -447,7 +447,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
-P 23653f7aab6609f69948a7366bef9ebd0fd4d0b1
-R e5eede03aa71c87e3660641f231da32a
+P 339941d83ae397d69084f41483afb1ea44d44967
+R b47b2f2fe5cfddcd0105ea435c37f3d5
 U drh
-Z 040a317482599bd330deb7edde7595dd
+Z 511499bbee13f7559f6a7e8fb29eeb3d
index fc6145fd146dda5cddd65d34608eb0038d50c057..c096c2b752f3db1d1d5ad9c1bc9fa11241e69ad9 100644 (file)
@@ -1 +1 @@
-339941d83ae397d69084f41483afb1ea44d44967
\ No newline at end of file
+70c8c7e2ce5213778e63c200a6637849920deea6
\ No newline at end of file
index 29dc0e6e5df358ef5de132d8780e25a44416ce1f..6eb8387a8713db291384c31a18f8feb578e3d399 100644 (file)
@@ -437,7 +437,7 @@ static int yy_find_reduce_action(
 /*
 ** The following routine is called if the stack overflows.
 */
-static void yyStackOverflow(yyParser *yypParser){
+static void yyStackOverflow(yyParser *yypParser, YYMINORTYPE *yypMinor){
    ParseARG_FETCH;
    yypParser->yyidx--;
 #ifndef NDEBUG
@@ -465,14 +465,14 @@ static void yy_shift(
   yypParser->yyidx++;
 #if YYSTACKDEPTH>0 
   if( yypParser->yyidx>=YYSTACKDEPTH ){
-    yyStackOverflow(yypParser);
+    yyStackOverflow(yypParser, yypMinor);
     return;
   }
 #else
   if( yypParser->yyidx>=yypParser->yystksz ){
     yyGrowStack(yypParser);
     if( yypParser->yyidx>=yypParser->yystksz ){
-      yyStackOverflow(yypParser);
+      yyStackOverflow(yypParser, yypMinor);
       return;
     }
   }
@@ -670,7 +670,8 @@ void Parse(
   if( yypParser->yyidx<0 ){
 #if YYSTACKDEPTH<=0
     if( yypParser->yystksz <=0 ){
-      yyStackOverflow(yypParser);
+      memset(&yyminorunion, 0, sizeof(yyminorunion));
+      yyStackOverflow(yypParser, &yyminorunion);
       return;
     }
 #endif