diff options
| author | Karl Heuer | 1997-11-11 02:52:50 +0000 |
|---|---|---|
| committer | Karl Heuer | 1997-11-11 02:52:50 +0000 |
| commit | 0e3cb3ebc82c8a85665ddfee47bf5d9f7ef8a6e6 (patch) | |
| tree | b1e657b02fb1beb22a165fc75ddd541ad41a1a74 | |
| parent | 85f75902ca8c8692ab038dd03459eb65a52243c1 (diff) | |
| download | emacs-0e3cb3ebc82c8a85665ddfee47bf5d9f7ef8a6e6.tar.gz emacs-0e3cb3ebc82c8a85665ddfee47bf5d9f7ef8a6e6.zip | |
(describe-function): Handle the arglist of a macro.
| -rw-r--r-- | lisp/help.el | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/help.el b/lisp/help.el index 8fdcc7c8d48..3911a166da8 100644 --- a/lisp/help.el +++ b/lisp/help.el | |||
| @@ -565,10 +565,13 @@ C-w Display information on absence of warranty for GNU Emacs." | |||
| 565 | (princ "'"))) | 565 | (princ "'"))) |
| 566 | (princ ".") | 566 | (princ ".") |
| 567 | (terpri) | 567 | (terpri) |
| 568 | (let ((arglist (cond ((byte-code-function-p def) | 568 | (let* ((inner-function (if (and (listp def) 'macro) |
| 569 | (car (append def nil))) | 569 | (cdr def) |
| 570 | ((eq (car-safe def) 'lambda) | 570 | def)) |
| 571 | (nth 1 def)) | 571 | (arglist (cond ((byte-code-function-p inner-function) |
| 572 | (car (append inner-function nil))) | ||
| 573 | ((eq (car-safe inner-function) 'lambda) | ||
| 574 | (nth 1 inner-function)) | ||
| 572 | (t t)))) | 575 | (t t)))) |
| 573 | (if (listp arglist) | 576 | (if (listp arglist) |
| 574 | (progn | 577 | (progn |