on 6/24/09 12:46 PM, Akim Demaille at [email protected] uttered the following:
> Actually, it was accepted. You attached several files, but not the > testsuite.log file, which is the most important one. Oops!!! Sending it now. > Could you please run > > make check TESTSUITEFLAGS='-d -v 3' </deb/null > > and send the result back? There are two sets of tests in test 3, and > I don't know which one failed. Maybe the first one I guess. I had to kill the hung process again, which is why it says the test failed. If I leave it alone, it keeps one cpu pegged to nearly 100% forever. I've tried leaving it a very long time before to find out for sure, it ran a good part of a day, then overnight and then again for hours the next day and nothing happened, I just killed that process. > It will display the command that were run, typically > > bison input.y That's the one. I'm attaching the testsuite.log from the 003 folder as well. Here is the output of: gmake check TESTSUITEFLAGS='-d -v 3' </dev/null gmake check-recursive gmake[1]: Entering directory `/usr/local/bison/bison-2.4.1' Making check in build-aux gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/build-aux' gmake[2]: Nothing to be done for `check'. gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/build-aux' Making check in po gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/po' gmake[2]: Nothing to be done for `check'. gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/po' Making check in runtime-po gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/runtime-po' gmake[2]: Nothing to be done for `check'. gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/runtime-po' Making check in lib gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/lib' gmake check-recursive gmake[3]: Entering directory `/usr/local/bison/bison-2.4.1/lib' gmake[4]: Entering directory `/usr/local/bison/bison-2.4.1/lib' gmake[4]: Nothing to be done for `check-am'. gmake[4]: Leaving directory `/usr/local/bison/bison-2.4.1/lib' gmake[3]: Leaving directory `/usr/local/bison/bison-2.4.1/lib' gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/lib' Making check in data gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/data' gmake[2]: Nothing to be done for `check'. gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/data' Making check in src gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/src' gmake check-am gmake[3]: Entering directory `/usr/local/bison/bison-2.4.1/src' gmake[3]: Nothing to be done for `check-am'. gmake[3]: Leaving directory `/usr/local/bison/bison-2.4.1/src' gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/src' Making check in doc gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/doc' gmake[2]: Nothing to be done for `check'. gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/doc' Making check in examples gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/examples' Making check in calc++ gmake[3]: Entering directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake check-am gmake[4]: Entering directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake calc++ gmake[5]: Entering directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake[5]: `calc++' is up to date. gmake[5]: Leaving directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake check-TESTS gmake[5]: Entering directory `/usr/local/bison/bison-2.4.1/examples/calc++' PASS: test ================== All 1 tests passed ================== gmake[5]: Leaving directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake[4]: Leaving directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake[3]: Leaving directory `/usr/local/bison/bison-2.4.1/examples/calc++' gmake[3]: Entering directory `/usr/local/bison/bison-2.4.1/examples' gmake[3]: Nothing to be done for `check-am'. gmake[3]: Leaving directory `/usr/local/bison/bison-2.4.1/examples' gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/examples' Making check in tests gmake[2]: Entering directory `/usr/local/bison/bison-2.4.1/tests' gmake bison gmake[3]: Entering directory `/usr/local/bison/bison-2.4.1/tests' gmake[3]: `bison' is up to date. gmake[3]: Leaving directory `/usr/local/bison/bison-2.4.1/tests' gmake check-local gmake[3]: Entering directory `/usr/local/bison/bison-2.4.1/tests' /bin/bash ./testsuite -d -v 3 ## --------------------------- ## ## GNU Bison 2.4.1 test suite. ## ## --------------------------- ## 3. input.at:161: testing ... ./input.at:162: bison input.y And then, that's where I killed the process. And here's what came after: 25a26 > /usr/local/bison/src/src/bison: subsidiary program `/usr/bin/gm4' failed ./input.at:162: exit code was 1, expected 0 3. input.at:161: FAILED (input.at:162) ## ------------- ## ## Test results. ## ## ------------- ## ERROR: 1 test was run, 1 failed unexpectedly. ## -------------------------- ## ## testsuite.log was created. ## ## -------------------------- ## Please send `tests/testsuite.log' and all information you think might help: To: <[email protected]> Subject: [GNU Bison 2.4.1] testsuite: 3 failed gmake[3]: *** [check-local] Error 1 gmake[3]: Leaving directory `/usr/local/bison/bison-2.4.1/tests' gmake[2]: *** [check-am] Error 2 gmake[2]: Leaving directory `/usr/local/bison/bison-2.4.1/tests' gmake[1]: *** [check-recursive] Error 1 gmake[1]: Leaving directory `/usr/local/bison/bison-2.4.1' gmake: *** [check] Error 2 > input.y is actually tests/testsuite.dir/003/input.y. It would be most > useful if you could try to make it as small as possible while > preserving the bug (eliminate each a:, b: etc. line). To run Bison on > the test, run > > ./tests/bison tests/testsuite.dir/003/input.y ./tests/bison tests/testsuite.dir/003/input.y tests/testsuite.dir/003/input.y:11.10-32: warning: unset value: $$ tests/testsuite.dir/003/input.y:11.10-32: warning: unused value: $1 tests/testsuite.dir/003/input.y:11.10-32: warning: unused value: $3 tests/testsuite.dir/003/input.y:11.10-32: warning: unused value: $5 tests/testsuite.dir/003/input.y:12.9: warning: empty rule for typed nonterminal, and no action tests/testsuite.dir/003/input.y:13.10-59: warning: unset value: $$ tests/testsuite.dir/003/input.y:13.10-59: warning: unused value: $3 tests/testsuite.dir/003/input.y:13.10-59: warning: unused value: $5 tests/testsuite.dir/003/input.y:14.10-47: warning: unset value: $$ tests/testsuite.dir/003/input.y:14.10-47: warning: unused value: $3 tests/testsuite.dir/003/input.y:14.10-47: warning: unused value: $5 tests/testsuite.dir/003/input.y:15.10-36: warning: unset value: $$ tests/testsuite.dir/003/input.y:15.10-36: warning: unused value: $3 tests/testsuite.dir/003/input.y:15.10-36: warning: unused value: $5 tests/testsuite.dir/003/input.y:17.10-58: warning: unset value: $$ tests/testsuite.dir/003/input.y:17.10-58: warning: unused value: $1 tests/testsuite.dir/003/input.y:17.10-58: warning: unused value: $3 tests/testsuite.dir/003/input.y:17.10-58: warning: unused value: $5 tests/testsuite.dir/003/input.y:18.10-72: warning: unset value: $$ tests/testsuite.dir/003/input.y:18.10-72: warning: unused value: $1 tests/testsuite.dir/003/input.y:18.10-72: warning: unused value: $3 tests/testsuite.dir/003/input.y:18.10-72: warning: unused value: $5 tests/testsuite.dir/003/input.y:21.10-68: warning: unset value: $$ tests/testsuite.dir/003/input.y:21.10-68: warning: unused value: $1 tests/testsuite.dir/003/input.y:21.10-68: warning: unused value: $2 I had to kill the process here. And here's the out put after the kill: src/bison: subsidiary program `/usr/bin/gm4' failed I didn't know exactly how to "eliminate" the lines a: b: and such. Removing one line caused an error, so I did for each line the same as for the b: line, putting comments and after adding one at a time, I ended up with all commented: a: INT | /*INT { } INT { } INT { }*/; b: INT | /* empty */; c: INT | /*INT { $1 } INT { $<integer>2 } INT { $<integer>4 }*/; d: INT | /*INT { } INT { $1 } INT { $<integer>2 }*/; e: INT | /*INT { } INT { } INT { $1 }*/; f: INT | /*INT { } INT { } INT { $$ = $1 + $3 + $5; }*/; g: INT | /*INT { $<integer>$; } INT { $<integer>$; } INT { }*/; h: INT | /*INT { $<integer>$; } INT { $<integer>$ = $<integer>2; } INT { }*/; i: INT | /*INT INT { } { $$ = $1 + $2; }*/; j: INT | /*INT INT { $<integer>$ = 1; } { $$ = $1 + $2; }*/; k: INT | /*INT INT { $<integer>$; } { $<integer>$ = $<integer>3; } { }*/; l: INT | /*INT { $<integer>$ = $<integer>1; } INT { $<integer>$ = $<integer>2 + $<integer>3; } INT { $<integer>$ = $<integer>4 + $<integer>5; }*/; And the hang still occurs. > to be sure you're using the bison from the tarball. Possibly with the > flag --warnings=midrule-values if it's the second run that has problems. I'm sure it's using the bison from the tarball because I disabled the system wide one because it has that problem. There is no bison now in the path. In the tests/testsuite.dir/003 folder, the run program contains this: #! /bin/sh test "${ZSH_VERSION+set}" = set && alias -g '${1+"$@"}'='"$@"' cd '/usr/local/bison/src/tests' exec ${CONFIG_SHELL-/bin/bash} "/usr/local/bison/src/tests/./testsuite" -v -d 3 ${1+"$@"} exit 1 I don't know what to try next.. Thanks, -- Didier Godefroy mailto:[email protected] Support anti-Spam legislation. Join the fight http://www.cauce.org/
testsuite.log
Description: Binary data
testsuite.log.003
Description: Binary data
