bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#19613: 25.0.50; cl-labels bug


From: Stefan Monnier
Subject: bug#19613: 25.0.50; cl-labels bug
Date: Mon, 26 Jan 2015 10:14:56 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

> -    (let ((found (assq f macroexpand-all-environment)))
> -      (if (and found (ignore-errors
> -                       (eq (cadr (cl-caddr found)) 'cl-labels-args)))
> -          (cadr (cl-caddr (cl-cadddr found)))
> +    (let* ((found (assq f macroexpand-all-environment))
> +           (replacement (and found
> +                             (ignore-errors
> +                               (funcall (cdr found) cl--labels-magic)))))
> +      (if (and replacement (eq cl--labels-magic (car replacement)))
> +          (nth 1 replacement)
>          (let ((res `(function ,f)))
>            (setq cl--function-convert-cache (cons f res))
>            res))))))

This looks correct.  Ideally this part of cl--function-convert should
delegate to cl--labels-convert to avoid the code duplication, tho.


        Stefan





reply via email to

[Prev in Thread] Current Thread [Next in Thread]