This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: GSOC | Extending Common Lisp support
On 24 April 2012 23:50, Jamison Hope <jrh@theptrgroup.com> wrote:
> If you're creating a new let via Compilation#letStart() and going the
> letVariable()/letEnter()/letDone() route, then you don't need to explicitly
> do the lexical.push(). I had just mentioned that in case you were going
> to reuse an existing let for which letEnter() had already been called --
> in that case, you'd need to call let.add(decl) as well as lexical.push(decl)
> in order to simulate the letVariable()/letEnter() calls.
I did briefly consider reusing an existing LET, but wasn't sure how to
get a handle on the most recent LetExp, in some case (like after a
DEFUN), not such expression would exist IIUC.
No worries about promptness, I probably need to think some more about
it, I was only fishing for a "Aha, dead variable, you don't set
LetExp'rs up like that!". Might help if I could see the byte code
being emitted before this error, but I'm not sure how to do that
globally.
Charlie.