Subject: bug#28725: 26.0.60; Error when using Edebug on a generator

From: Lars Ingebrigtsen <[email-masked]>
Date: Sun, 20 Oct 2019 23:45:57 +0200

Gemini Lasswell <[email-masked]> writes:

> Running a generator under Edebug results in an error message when it
> gets to iter-yield.
>
> To reproduce, put the code below into *scratch* and:
>
> M-x edebug-all-defs RET
> M-x eval-buffer RET
> M-: (my-iter-do) RET
> g
>
> Result: Symbol’s function definition is void: cps-internal-yield

I'm able to reproduce this bug in Emacs 27.

Does anybody know what's causing this?  It's bugging out in the
`iter-yield' call.

> ;;;  -*- lexical-binding: t -*-
>
> (iter-defun mycounter (start)
>   (let* ((i start))
>     (while t
>       (iter-yield i)
>       (setq i (1+ i)))))
>
> (defun my-iter-do ()
>   (let (results
> 	(tally (mycounter 10)))
>     (dotimes (_ 4)
>       (push (iter-next tally) results))
>     results))

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no