GNU bug report logs -
#38206
26.1; cl-prettyexpand incorrectly expands pushing to structures
Previous Next
Reported by: Braun Gábor <braungb88 <at> gmail.com>
Date: Thu, 14 Nov 2019 08:21:02 UTC
Severity: normal
Tags: fixed
Found in version 26.1
Fixed in version 27.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #11 received at 38206 <at> debbugs.gnu.org (full text, mbox):
> The bug was introduced by a rewrite in 2012, I think, which changed the
> implementation radically, which made it pass in that list as a totally
> bogus ENVIRONMENT to macroexpand-all.
Not sure why you see it that way. `C-x v h` tells me:
commit 6fa6c4aedbc9f33cf8ed67fdb7794c3b4ff6660a
Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
Date: Thu Jun 7 15:48:22 2012 -0400
Move old compatiblity to cl.el. Remove cl-macroexpand-all.
[...]
diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el
--- a/lisp/emacs-lisp/cl-extra.el
+++ b/lisp/emacs-lisp/cl-extra.el
@@ -798,2 +681,2 @@
- (setq form (cl-macroexpand-all form
- (and (not full) '((cl-block) (cl-eval-when)))))
+ (setq form (macroexpand-all form
+ (and (not full) '((cl-block) (cl-eval-when)))))
commit 7c1898a7b93053cd0431f46f02d82c0a31bfb8bf
Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
Date: Sun Jun 3 21:05:17 2012 -0400
* lisp/emacs-lisp/cl-lib.el: Rename from cl.el.
* lisp/emacs-lisp/cl.el: New compatibility file.
* emacs-lisp/cl-lib.el, lisp/emacs-lisp/cl-seq.el, lisp/emacs-lisp/cl-macs.el:
* lisp/emacs-lisp/cl-extra.el: Rename all top-level functions and variables
to obey the "cl-" prefix.
* lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Adjust to new name.
diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el
--- a/lisp/emacs-lisp/cl-extra.el
+++ b/lisp/emacs-lisp/cl-extra.el
@@ -802,2 +798,2 @@
(setq form (cl-macroexpand-all form
- (and (not full) '((block) (eval-when)))))
+ (and (not full) '((cl-block) (cl-eval-when)))))
commit fcd737693e8e320acd70f91ec8e0728563244805
Author: Richard M. Stallman <rms <at> gnu.org>
Date: Fri Jul 30 20:15:09 1993 +0000
entered into RCS
diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el
--- /dev/null
+++ b/lisp/emacs-lisp/cl-extra.el
@@ -0,0 +920,2 @@
+ (setq form (cl-macroexpand-all form
+ (and (not full) '((block) (eval-when)))))
so it seems that it's been with us since at least 1993.
> I think the right change here is to just deprecate the FULL parameter
> and remove the
>
> (and (not full) '((cl-block) (cl-eval-when)))))
>
> bit. Stefan?
100% agreement.
Stefan
This bug report was last modified 5 years and 181 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.