emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r111210: * lisp/emacs-lisp/cl.el (let


From: Stefan Monnier
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111210: * lisp/emacs-lisp/cl.el (letf): Make it an alias of cl-letf.
Date: Wed, 12 Dec 2012 20:46:47 -0500
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111210
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Wed 2012-12-12 20:46:47 -0500
message:
  * lisp/emacs-lisp/cl.el (letf): Make it an alias of cl-letf.
  (cl--symbol-function): Remove (now that funbound is like nil).
modified:
  lisp/ChangeLog
  lisp/emacs-lisp/cl.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-12-12 22:39:29 +0000
+++ b/lisp/ChangeLog    2012-12-13 01:46:47 +0000
@@ -1,3 +1,8 @@
+2012-12-13  Stefan Monnier  <address@hidden>
+
+       * emacs-lisp/cl.el (letf): Make it an alias of cl-letf.
+       (cl--symbol-function): Remove (now that funbound is like nil).
+
 2012-12-12  Glenn Morris  <address@hidden>
 
        * button.el (button--area-button-p): Fix typo.

=== modified file 'lisp/emacs-lisp/cl.el'
--- a/lisp/emacs-lisp/cl.el     2012-12-10 02:00:42 +0000
+++ b/lisp/emacs-lisp/cl.el     2012-12-13 01:46:47 +0000
@@ -220,7 +220,7 @@
                callf2
                callf
                letf*
-               ;; letf
+               letf
                rotatef
                shiftf
                remf
@@ -504,28 +504,6 @@
 ;; not 100% compatible: not worth the trouble to add them to cl-lib.el, but we
 ;; still need to support old users of cl.el.
 
-(defmacro cl--symbol-function (symbol)
-  "Like `symbol-function' but return `cl--unbound' if not bound."
-  ;; (declare (gv-setter (lambda (store)
-  ;;                       `(if (eq ,store 'cl--unbound)
-  ;;                            (fmakunbound ,symbol) (fset ,symbol ,store)))))
-  `(if (fboundp ,symbol) (symbol-function ,symbol) 'cl--unbound))
-(gv-define-setter cl--symbol-function (store symbol)
-  `(if (eq ,store 'cl--unbound) (fmakunbound ,symbol) (fset ,symbol ,store)))
-
-(defmacro letf (bindings &rest body)
-  "Dynamically scoped let-style bindings for places.
-For more details, see `cl-letf'.  This macro behaves like that one
-in almost every respect (apart from details that relate to some
-deprecated usage of `symbol-function' in place forms)."  ; bug#12760
-  (declare (indent 1) (debug cl-letf))
-  ;; Like cl-letf, but with special handling of symbol-function.
-  `(cl-letf ,(mapcar (lambda (x) (if (eq (car-safe (car x)) 'symbol-function)
-                                `((cl--symbol-function ,@(cdar x)) ,@(cdr x))
-                              x))
-                     bindings)
-            ,@body))
-
 (defun cl--gv-adapt (cl-gv do)
   ;; This function is used by all .elc files that use define-setf-expander and
   ;; were compiled with Emacs>=24.3.


reply via email to

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