diff options
| author | Stefan Monnier | 2015-05-06 17:43:43 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2015-05-06 17:43:43 -0400 |
| commit | bceffdb3796df75b6f2efc2f6f17ca927a25c3b9 (patch) | |
| tree | f2185861ef05e6c0cb208ff7cd4f7d67c5b73e95 | |
| parent | 96b99c1bef79f3839e1a2f3c8e8d6f5625dc5cc3 (diff) | |
| download | emacs-bceffdb3796df75b6f2efc2f6f17ca927a25c3b9.tar.gz emacs-bceffdb3796df75b6f2efc2f6f17ca927a25c3b9.zip | |
(define-modify-macro): Make sure cl--arglist-args is defined
* lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
cl--arglist-args is defined (bug#20517).
| -rw-r--r-- | lisp/emacs-lisp/cl.el | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/cl.el b/lisp/emacs-lisp/cl.el index 564a44457d8..c966ace3852 100644 --- a/lisp/emacs-lisp/cl.el +++ b/lisp/emacs-lisp/cl.el | |||
| @@ -626,6 +626,8 @@ You can replace this form with `gv-define-setter'. | |||
| 626 | ;; ...the rest, and build the 5-tuple)) | 626 | ;; ...the rest, and build the 5-tuple)) |
| 627 | (make-obsolete 'get-setf-method 'gv-letplace "24.3") | 627 | (make-obsolete 'get-setf-method 'gv-letplace "24.3") |
| 628 | 628 | ||
| 629 | (declare-function cl--arglist-args "cl-macs" (args)) | ||
| 630 | |||
| 629 | (defmacro define-modify-macro (name arglist func &optional doc) | 631 | (defmacro define-modify-macro (name arglist func &optional doc) |
| 630 | "Define a `setf'-like modify macro. | 632 | "Define a `setf'-like modify macro. |
| 631 | If NAME is called, it combines its PLACE argument with the other | 633 | If NAME is called, it combines its PLACE argument with the other |
| @@ -639,6 +641,7 @@ You can replace this macro with `gv-letplace'." | |||
| 639 | symbolp &optional stringp))) | 641 | symbolp &optional stringp))) |
| 640 | (if (memq '&key arglist) | 642 | (if (memq '&key arglist) |
| 641 | (error "&key not allowed in define-modify-macro")) | 643 | (error "&key not allowed in define-modify-macro")) |
| 644 | (require 'cl-macs) ;For cl--arglist-args. | ||
| 642 | (let ((place (make-symbol "--cl-place--"))) | 645 | (let ((place (make-symbol "--cl-place--"))) |
| 643 | `(cl-defmacro ,name (,place ,@arglist) | 646 | `(cl-defmacro ,name (,place ,@arglist) |
| 644 | ,doc | 647 | ,doc |