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 <[email protected]>: > (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 > [email protected] > http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel > > _______________________________________________ parenscript-devel mailing list [email protected] http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
