Oh, I'm sorry. I normally strip out any project-specific macro forms, 
but this time λ slipped through. It can just be replaced with LAMBDA
in the examples I supplied. So I think your assumption is incorrect.
In my example #1, the lambda doesn't explicitly return anything.
Rather, it's the implicit return of (foo 123) that's causing the complaint. 
In other words, to get rid of the warning, you'd have to put a BLOCK NIL
form at the start of every lambda, which is bad.

Can you either confirm that there is a bug as I described it, or that I
got it wrong?

< 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. >

I'm a little unsure yet how this works in practice. I'll try compiling our code
and looking at the generated output once the main bugs I reported have 
been fixed, and will report back with the details.



2010/12/8 Vladimir Sedach <vsedach@gmail.com>
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