-C The\slemon\sparser\sgenerator\snow\sinserts\syytestcase()\smacros\son\sreduce\saction\nand\son\seach\sdestructor,\sto\sverify\sthat\sall\shave\sbeen\sexecuted.\s\syytestcase()\nis\sa\sno-op\sby\sdefault\sbut\scan\sbe\sset\sto\ssomething\smore\suseful\sinside\nof\s%include.\s(CVS\s6755)
-D 2009-06-12T13:53:52
+C The\sprevious\scheck-in\s((6755))\sput\sin\smore\syytestcase()\smacros\sthan\sare\ncalled\sfor.\s\sThis\scheck-in\saddresses\sthat\sproblem.\s(CVS\s6756)
+D 2009-06-12T15:47:34
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
F Makefile.in 8b8fb7823264331210cddf103831816c286ba446
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
F tool/fragck.tcl 5265a95126abcf6ab357f7efa544787e5963f439
F tool/genfkey.README cf68fddd4643bbe3ff8e31b8b6d8b0a1b85e20f4
F tool/genfkey.test 405a43d54f1646bfaa7a84b03bb959aef62a3a49
-F tool/lemon.c 19eb5bf696f833a4e22ee13a93b3f6b6038f41e3
+F tool/lemon.c 890d999c32e5c3f98bad406133a6fab47f8bec06
F tool/lempar.c 2ed70b3fc896a47e07fedfe543324f008f53d223
F tool/mkkeywordhash.c 511a848b2ac7a3d93f36adc1e1086b4c5741224b
F tool/mkopts.tcl 66ac10d240cc6e86abd37dc908d50382f84ff46e x
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
F tool/vdbe-compress.tcl 672f81d693a03f80f5ae60bfefacd8a349e76746
-P 9cfbe2ba68470a2850a7d7a64eb088f7b422a3e5
-R b3c179781de3d21b42dbda7713a85945
+P fe9c9177340a3dc372ffa1b851030d005e0c46db
+R 471f9a46f36f6b04df4a508ac9988c8f
U drh
-Z 9899f5ed2d564d373727b1fd600efdbb
+Z 08dd3a787d4f92b742186e9b39413caa
if( sp==0 || sp->type!=TERMINAL ) continue;
if( once ){
fprintf(out, " /* TERMINAL Destructor */\n"); lineno++;
+ fprintf(out," case %d: /* %s */\n", sp->index, sp->name); lineno++;
once = 0;
+ }else{
+ fprintf(out," case %d: /* %s */ yytestcase(yymajor==%d)\n",
+ sp->index, sp->name, sp->index); lineno++;
}
- fprintf(out," case %d: /* %s */ yytestcase(yymajor==%d);\n",
- sp->index, sp->name, sp->index); lineno++;
}
for(i=0; i<lemp->nsymbol && lemp->symbols[i]->type!=TERMINAL; i++);
if( i<lemp->nsymbol ){
sp->index<=0 || sp->destructor!=0 ) continue;
if( once ){
fprintf(out, " /* Default NON-TERMINAL Destructor */\n"); lineno++;
+ fprintf(out," case %d: /* %s */\n",
+ sp->index, sp->name); lineno++;
once = 0;
+ }else{
+ fprintf(out," case %d: /* %s */ yytestcase(yymajor==%d);\n",
+ sp->index, sp->name, sp->index); lineno++;
}
- fprintf(out," case %d: /* %s */ yytestcase(yymajor==%d);\n",
- sp->index, sp->name, sp->index); lineno++;
dflt_sp = sp;
}
if( dflt_sp!=0 ){
for(i=0; i<lemp->nsymbol; i++){
struct symbol *sp = lemp->symbols[i];
if( sp==0 || sp->type==TERMINAL || sp->destructor==0 ) continue;
- fprintf(out," case %d: /* %s */ yytestcase(yymajor==%d);\n",
- sp->index, sp->name, sp->index); lineno++;
+ fprintf(out," case %d: /* %s */\n", sp->index, sp->name); lineno++;
/* Combine duplicate destructors into a single case */
for(j=i+1; j<lemp->nsymbol; j++){