GNU bug report logs - #19613
25.0.50; cl-labels bug

Previous Next

Package: emacs;

Reported by: Katsumi Yamaoka <yamaoka <at> jpl.org>

Date: Fri, 16 Jan 2015 05:20:02 UTC

Severity: normal

Found in version 25.0.50

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


Message #25 received at 19613 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: Katsumi Yamaoka <yamaoka <at> jpl.org>
Cc: 19613 <at> debbugs.gnu.org
Subject: Re: bug#19613: 25.0.50; cl-labels bug
Date: Mon, 26 Jan 2015 10:14:56 -0500
> -    (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




This bug report was last modified 10 years and 115 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.