[parenscript-devel] Loop return values don't get returned
Vladimir Sedach
vsedach at gmail.com
Sat May 5 23:21:47 UTC 2012
That's completely correct. I probably forgot that I didn't finish the
functionality before pushing out a patch. I've pushed a fix that
returns the value, but warns about "returning from unknown block."
That will be fixed later - the loop return code is kind of weird right
now.
Vladimir
On Tue, Apr 10, 2012 at 10:22 PM, Daniel Gackle <danielgackle at gmail.com> wrote:
> Commit 83f4ea appears to have implemented return values from loop
> expressions, which is great and something I've wanted for a long time.
> But there seems to be a bug insofar as the return values never
> actually get returned:
>
> An example is this FOR loop - foo() should return 40 but returns NaN (10 *
> null) instead:
>
> (defun foo ()
> (* 10 (for ((i 0)) ((< i 10)) ((incf i))
> (when (> i 3)
> (return i)))))
>
> =>
>
> function foo() {
> return 10 * (function () {
> var loopResultVar6945 = null;
> for (var i = 0; i < 10; ++i) {
> if (i > 3) {
> loopResultVar6945 = i;
> break;
> };
> };
> loopResultVar6945;
> })();
> };
>
> I get the same result using the LOOP macro, and WHILE loops have the same
> problem.
>
> Daniel
>
>
> _______________________________________________
> parenscript-devel mailing list
> parenscript-devel at common-lisp.net
> http://lists.common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
>
More information about the parenscript-devel
mailing list