larcenists / larceny

Larceny Scheme implementation
Other
202 stars 32 forks source link

review interaction between interrupt handlers and error handlers #256

Open larceny-trac-import opened 11 years ago

larceny-trac-import commented 11 years ago

Reported by: lth on Mon Jan 26 06:00:00 1998 056 v0.32 (980126 / lth); v0.40 (981217 / lth) Priority: low Category: BUILD / correctness

The development environment (both Chez Scheme and Larceny hosts):

; Just finished make-larceny-heap

(inline-barrier)

*\ Error encountered! Deleting target file: larceny.heap

Error: variable inline-barrier is not bound. Type (debug) to enter the debugger.

In this case, it should not delete the previous target! This did not happen on a subsequent try.

Notes: Looks like an error handler is not being taken down.

In fact, it only appears to happen after a ^C has interrupted a previous command; could it be that the interrupt handler does not interact properly with the error system?

larceny-trac-import commented 11 years ago

Author: pnkfelix I would like to fix this.

So far, I have been working around it by ''manually causing an error'' after interrupting a command. Amazingly, this works, and is convenient enough so that an educated larceny hacker can get by, but its a bit silly.

larceny-trac-import commented 11 years ago

Author: pnkfelix Oh, wait, sorry, I'm misrepresenting the situation. Lars' description is actually ''describing'' the work-around that I have been employing to deal with the fact that interrupting a command is not causing the handlers to be invoked. (Maybe that is actually by design, but that is hard for me to imagine.)