From: drh Date: Thu, 29 Mar 2007 02:26:45 +0000 (+0000) Subject: Get LEMON working again when YYSTACKDEPTH is greater than zero. (CVS 3739) X-Git-Tag: version-3.6.10~2431 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b7bac723505b0a706de67562254684772a391171;p=thirdparty%2Fsqlite.git Get LEMON working again when YYSTACKDEPTH is greater than zero. (CVS 3739) FossilOrigin-Name: e72c81dbb309709462e49c4e3e90c3e16ead1265 --- diff --git a/manifest b/manifest index c269d4e71c..8f2ed308dc 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Lemon\schange:\scompile\sthe\sresulting\sparser\swith\s-DYYSTACKDEPTH=0\sor\sset\nthe\s"%stack_size"\sparameter\sto\s0\sin\sthe\sgrammar\sand\sthe\sparser\sstack\nwill\sbe\sdynamically\sallocated\susing\srealloc()\sand\sfree().\s\sThe\sdefault\nbehavior\sis\sto\shave\sa\sfinite\sdepth\sstack.\s(CVS\s3738) -D 2007-03-29T01:44:46 +C Get\sLEMON\sworking\sagain\swhen\sYYSTACKDEPTH\sis\sgreater\sthan\szero.\s(CVS\s3739) +D 2007-03-29T02:26:46 F Makefile.in 1fe3d0b46e40fd684e1e61f8e8056cefed16de9f F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028 @@ -371,7 +371,7 @@ F test/where4.test b68496500bff496e83e76ae4ffb493b99064eac6 F tool/diffdb.c 7524b1b5df217c20cd0431f6789851a4e0cb191b F tool/fragck.tcl 5265a95126abcf6ab357f7efa544787e5963f439 F tool/lemon.c 3ac82886bff8096379fa4bfe5ea188e242bbaa47 -F tool/lempar.c 1c08d864e18ac4f146554c2fb76ae1ab751f776f +F tool/lempar.c 707cc8d6085075e7e7c8d33c716f0bb7f9180dee F tool/memleak.awk 4e7690a51bf3ed757e611273d43fe3f65b510133 F tool/memleak2.awk 9cc20c8e8f3c675efac71ea0721ee6874a1566e8 F tool/memleak3.tcl 7707006ee908cffff210c98158788d85bb3fcdbf @@ -442,7 +442,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513 -P 72cea358da4bd38af322f18f2a753171f7decaf8 -R 19096804931fc69bc6361fcf0c3ff22e +P 06719b741ab1a2df0371f6d587563cc81eb8880a +R 611325e102e7d55f3c74217e92a2ccd7 U drh -Z 85e0303fabdca8721ceddd77f2f883b6 +Z 7e0dc044f836d78b033cd61334a03256 diff --git a/manifest.uuid b/manifest.uuid index 65ebd6e9e7..973f594fe0 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -06719b741ab1a2df0371f6d587563cc81eb8880a \ No newline at end of file +e72c81dbb309709462e49c4e3e90c3e16ead1265 \ No newline at end of file diff --git a/tool/lempar.c b/tool/lempar.c index 5c0714be48..29dc0e6e5d 100644 --- a/tool/lempar.c +++ b/tool/lempar.c @@ -668,10 +668,12 @@ void Parse( /* (re)initialize the parser, if necessary */ yypParser = (yyParser*)yyp; if( yypParser->yyidx<0 ){ +#if YYSTACKDEPTH<=0 if( yypParser->yystksz <=0 ){ yyStackOverflow(yypParser); return; } +#endif yypParser->yyidx = 0; yypParser->yyerrcnt = -1; yypParser->yystack[0].stateno = 0;