Re: stack-discipline bug in 0.14 (recent)

Gary Byers <[email protected]> Thu, 8 May 2003 23:23:52 -0600 (MDT)
Newsgroups gmane.lisp.openmcl.bugs
Message-ID <[email protected]>
The fix (to "ccl:compiler;PPC;ppc-vinsns.lisp") is in CVS.  The compiler
was generating a spurious extra frame on the temp stack whenever it
stack-allocated a "value cell" for a variable that's closed-over, setqed,
but only referenced from functions that have dynamic extent.  That's
not -that- uncommon a situation; it's surprising that the effects of
the bug weren't more pervasive.

On Thu, 8 May 2003, Gary Byers wrote:

> Something somewhere seems to be forgetting to pop a frame off of the
> temp stack.  Whatever that something somewhere is, it's apparently
> not executed very often; one way of provoking it is to do:
>
> ? (describe *terminal-io*)
>
> This'll crash in the middle of a MULTIPLE-VALUE-CALL; MV-CALL itself
> doesn't seem to be the culprit, but it's certainly sensitive to seeing
> something unexpected on the stack.
>
> In that particular case, the "something unexpected" seems to be a
> stack-consed list (perhaps a dynamic-extent &rest arg).
>
> I suspect that this was recently introduced.
>

It was.

> _______________________________________________
> bug-openmcl mailing list
> [email protected]
> http://clozure.com/cgi-bin/mailman/listinfo/bug-openmcl
>
>