Oh, I'm sorry. I normally strip out any project-specific macro forms,
I'm assuming λ is a macro that expands into a lambda that does (RETURN
<something>).
Indeed I've changed RETURN to try to work like it does in CL. If
there's no nil block it will still work, but issue a warning to
encourage people to change their code.
An easy way to get around this warning in your case is to make λ wrap
its body in a (block nil ...).
Vladimir
2010/12/6 Daniel Gackle <danielgackle@gmail.com>:
> _______________________________________________> (1) The following expression generates the correct code:
> (defun blah ()
> (λ ()
> (foo 123)))
> But it also emits "Warning: Returning from unknown block NILBLOCK",
> which is undeserved.
> (2) It's not clear how to do explicit return from a lambda now. That is,
> (defun blah ()
> (λ ()
> (when (foo)
> (return 123))
> ;; do some other stuff
> ))
> generates the same warning as above. Is this just a bug, or is it suggesting
> that one must explicitly declare a scope using (BLOCK NIL...) in order
> to do an explicit return warning-free? I'm hoping not the latter.
>
>
>
> parenscript-devel mailing list
> parenscript-devel@common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
>
>
_______________________________________________
parenscript-devel mailing list
parenscript-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel