diff options
| -rw-r--r-- | lisp/gnus/gmm-utils.el | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lisp/gnus/gmm-utils.el b/lisp/gnus/gmm-utils.el index 3357ee42239..6a64dcff11b 100644 --- a/lisp/gnus/gmm-utils.el +++ b/lisp/gnus/gmm-utils.el | |||
| @@ -420,8 +420,10 @@ coding-system." | |||
| 420 | ;; `labels' got obsolete since Emacs 24.3. | 420 | ;; `labels' got obsolete since Emacs 24.3. |
| 421 | (defmacro gmm-labels (bindings &rest body) | 421 | (defmacro gmm-labels (bindings &rest body) |
| 422 | "Make temporary function bindings. | 422 | "Make temporary function bindings. |
| 423 | The lexical scoping is handled via `lexical-let' rather than relying | 423 | The bindings can be recursive and the scoping is lexical, but capturing |
| 424 | on `lexical-binding'. | 424 | them in closures will only work if `lexical-binding' is in use. But in |
| 425 | Emacs 24.2 and older, the lexical scoping is handled via `lexical-let' | ||
| 426 | rather than relying on `lexical-binding'. | ||
| 425 | 427 | ||
| 426 | \(fn ((FUNC ARGLIST BODY...) ...) FORM...)" | 428 | \(fn ((FUNC ARGLIST BODY...) ...) FORM...)" |
| 427 | `(,(progn (require 'cl) (if (fboundp 'cl-labels) 'cl-labels 'labels)) | 429 | `(,(progn (require 'cl) (if (fboundp 'cl-labels) 'cl-labels 'labels)) |