emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-macs.el, v [EMACS_22_B


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-macs.el, v [EMACS_22_BASE]
Date: Thu, 16 Aug 2007 04:25:01 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Branch:         EMACS_22_BASE
Changes by:     Stefan Monnier <monnier>        07/08/16 04:25:00

Index: emacs-lisp/cl-macs.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/emacs-lisp/cl-macs.el,v
retrieving revision 1.61.2.1
retrieving revision 1.61.2.2
diff -u -b -r1.61.2.1 -r1.61.2.2
--- emacs-lisp/cl-macs.el       25 Jul 2007 04:09:47 -0000      1.61.2.1
+++ emacs-lisp/cl-macs.el       16 Aug 2007 04:24:56 -0000      1.61.2.2
@@ -266,15 +266,19 @@
             (nconc (nreverse simple-args)
                    (list '&rest (car (pop bind-lets))))
             (nconc (let ((hdr (nreverse header)))
+                      ;; Macro expansion can take place in the middle of
+                      ;; apparently harmless computation, so it should not
+                      ;; touch the match-data.
+                      (save-match-data
                      (require 'help-fns)
                      (cons (help-add-fundoc-usage
                             (if (stringp (car hdr)) (pop hdr))
-                            ;; orig-args can contain &cl-defs (an internal CL
-                            ;; thingy that I do not understand), so remove it.
+                               ;; orig-args can contain &cl-defs (an internal
+                               ;; CL thingy I don't understand), so remove it.
                             (let ((x (memq '&cl-defs orig-args)))
                               (if (null x) orig-args
                                 (delq (car x) (remq (cadr x) orig-args)))))
-                           hdr))
+                              hdr)))
                    (list (nconc (list 'let* bind-lets)
                                 (nreverse bind-forms) body)))))))
 




reply via email to

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