From: SourceForge.net <no...@so...> - 2005-02-11 15:19:13
|
Bugs item #1120544, was opened at 2005-02-10 20:35 Message generated for change (Comment added) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1120544&group_id=4933 Category: Lisp Core Group: None Status: Open Resolution: None Priority: 5 Submitted By: Robert Dodier (robert_dodier) Assigned to: Nobody/Anonymous (nobody) >Summary: output not reenabled after Lisp error in run_testsuite Initial Comment: If there is a Lisp error in a test suite script, then run_testsuite() prints the time and gc message and then hangs -- anything I type is ignored and ctrl-C doesn't get the interpreter's attention. My guess is that the Lisp error is caught in a way that precludes further progress. (I guess that's obvious, sorry that I don't have anything more useful to say.) I've found the follow can trigger this behavior: (%i1) defrule (a, b, c); (%o1) a : b -> c (%i2) run_testsuite (); Running tests in rtest1.mac: 28/28 tests passed. Running tests in rtest1a.mac: 23/23 tests passed. Running tests in rtest2.mac: Real time: 11.429437 sec. Run time: 11.42 sec. Space: 30141840 Bytes GC: 14, GC time: 2.76 sec. defrule (a, b, c) (all atoms) constructs a rule that confuses kill(); try "defrule (a,b,c); kill(rules)" which yields "$B is not of type LIST". I'll enter a separate bug report for that. rtest2.mac contains "kill(a)" which attempts to kill the erroneously-constructed rule a, throwing the Lisp error. Observed in: Maxima version: 5.9.1 Maxima build date: 21:24 9/23/2004 host type: i686-pc-linux-gnu lisp-implementation-type: CMU Common Lisp lisp-implementation-version: 19a also: Maxima version: 5.9.1.1cvs Maxima build date: 20:11 2/10/2005 host type: i686-redhat-linux-gnu lisp-implementation-type: CLISP lisp-implementation-version: 2.31 (released 2003-09-01) ---------------------------------------------------------------------- >Comment By: Robert Dodier (robert_dodier) Date: 2005-02-11 08:19 Message: Logged In: YES user_id=501686 Actually it looks like the command interpreter is still running, but output is not printed to the console. The line editing keys such as up/down arrow still work. Entering run_testsuite() causes a time report to be printed after a few seconds. Entering quit() causes Maxima to quit as expected. However, describe("describe") doesn't cause any output on the console. So it looks like the problem is that console output is not reenabled in case of a Lisp error in run_testsuite. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1120544&group_id=4933 |