[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#26073: workaround
From: |
Stefan Monnier |
Subject: |
bug#26073: workaround |
Date: |
Thu, 08 Feb 2018 21:43:01 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
> The examples given still fail on current master.
>
> (require 'generator)
> (setq lexical-binding t) ; for easier *scratch* evaluation
> (iter-do (y (funcall (iter-lambda (x)
> (dolist (it x)
> (let ((y (mapcar (lambda (it) (- it)) it)))
> (iter-yield y))))
> '((1 2) ( 3 4))))
> (print y)) ;=> Lisp error: (wrong-type-argument number-or-marker-p (1 2))
>
> (iter-next (funcall (iter-lambda ()
> (let ((it 1))
> (iter-yield (funcall (lambda (it) (- it)) (1+
> it))))))) ;=> -1
Duh, the code failed to handle vars introduced by `lambda' (and
`condition-case'). I installed a patch which fixes the above example
(and hopefully the rest, but given my past track record on this you'd
be foolish to believe it).
Stefan