summaryrefslogtreecommitdiff
path: root/lisp/gnus/gmm-utils.el
diff options
context:
space:
mode:
authorKatsumi Yamaoka <yamaoka@jpl.org>2012-12-06 03:30:23 +0000
committerKatsumi Yamaoka <yamaoka@jpl.org>2012-12-06 03:30:23 +0000
commit9ad948e2fdc7bbe7caa00fd3460ef3f47087c9c3 (patch)
treeff67d3cd8f7f34eafc01f9b3ef56af6a82a98b20 /lisp/gnus/gmm-utils.el
parent9a81a97f1712feb7b6118e3513a671434bb3edb6 (diff)
downloademacs-9ad948e2fdc7bbe7caa00fd3460ef3f47087c9c3.tar.gz
emacs-9ad948e2fdc7bbe7caa00fd3460ef3f47087c9c3.tar.bz2
emacs-9ad948e2fdc7bbe7caa00fd3460ef3f47087c9c3.zip
Avoid letf macro use from Gnus
gnus/gmm-utils.el (gmm-flet): Remove. gnus/gnus-sync.el (gnus-sync-lesync-call): Avoid overriding json-alist-p. gnus/message.el (message-read-from-minibuffer): Avoid overriding mail-abbrev-in-expansion-header-p. mail/mailabbrev.el (mail-abbrev-expand-wrapper): Work in minibuffer so as to enable message-read-from-minibuffer to expand mail aliases.
Diffstat (limited to 'lisp/gnus/gmm-utils.el')
-rw-r--r--lisp/gnus/gmm-utils.el18
1 files changed, 1 insertions, 17 deletions
diff --git a/lisp/gnus/gmm-utils.el b/lisp/gnus/gmm-utils.el
index 91e4965e91c..92a39257a76 100644
--- a/lisp/gnus/gmm-utils.el
+++ b/lisp/gnus/gmm-utils.el
@@ -417,23 +417,7 @@ coding-system."
(write-region start end filename append visit lockname))
(write-region start end filename append visit lockname mustbenew)))
-;; `flet' and `labels' are obsolete since Emacs 24.3.
-(defmacro gmm-flet (bindings &rest body)
- "Make temporary overriding function definitions.
-This is an analogue of a dynamically scoped `let' that operates on
-the function cell of FUNCs rather than their value cell.
-
-\(fn ((FUNC ARGLIST BODY...) ...) FORM...)"
- (require 'cl)
- (if (fboundp 'cl-letf)
- `(cl-letf ,(mapcar (lambda (binding)
- `((symbol-function ',(car binding))
- (lambda ,@(cdr binding))))
- bindings)
- ,@body)
- `(flet ,bindings ,@body)))
-(put 'gmm-flet 'lisp-indent-function 1)
-
+;; `labels' is obsolete since Emacs 24.3.
(defmacro gmm-labels (bindings &rest body)
"Make temporary function bindings.
The bindings can be recursive and the scoping is lexical, but capturing