[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8428: 24.0.50; describe-function is broken
From: |
Sam Steingold |
Subject: |
bug#8428: 24.0.50; describe-function is broken |
Date: |
Tue, 05 Apr 2011 14:39:22 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
current bzr tip:
emacs -q
C-h f interactive-p RET
standard-output == t
Debugger entered--Lisp error: (wrong-type-argument stringp t)
set-buffer(t)
(save-current-buffer (set-buffer standard-output) (save-excursion
(save-match-data (when (re-search-backward "alias for `\\([^`']+\\)'" nil t)
(help-xref-button 1 (quote help-function) def)))))
(with-current-buffer standard-output (save-excursion (save-match-data (when
(re-search-backward "alias for `\\([^`']+\\)'" nil t) (help-xref-button 1
(quote help-function) def)))))
(if (eq errtype (quote alias)) (princ ",\nwhich is not defined. Please make
a bug report.") (with-current-buffer standard-output (save-excursion
(save-match-data (when (re-search-backward "alias for `\\([^`']+\\)'" nil t)
(help-xref-button 1 (quote help-function) def))))) (setq file-name
(find-lisp-object-file-name function def)) (when file-name (princ " in `")
(princ (if (eq file-name (quote C-source)) "C source code"
(file-name-nondirectory file-name))) (princ "'") (with-current-buffer
standard-output (save-excursion (re-search-backward "`\\([^`']+\\)'" nil t)
(help-xref-button 1 (quote help-function-def) function file-name)))) (princ
".") (with-current-buffer (help-buffer) (fill-region-as-paragraph
(save-excursion (goto-char pt1) (forward-line 0) (point)) (point))) (terpri)
(terpri) (when (commandp function) (let ((pt2 (with-current-buffer
(help-buffer) (point))) (remapped (command-remapping function))) (unless (memq
remapped (quote (ignore undefined))) (let ((keys (where-is-internal ...
overriding-local-map nil nil)) non-modified-keys) (if (and (eq function ...)
(vectorp ...) (consp ...)) (princ "It is bound to many ordinary text
characters.\n") (dolist (key keys) (if ... ...)) (when remapped (princ "It is
remapped to `") (princ ...) (princ "'")) (when keys (princ ...) (if ... ... ...
...)) (when (or remapped keys non-modified-keys) (princ ".") (terpri)))))
(with-current-buffer (help-buffer) (fill-region-as-paragraph pt2 (point))
(unless (looking-back "\n\n") (terpri))))) (when (and (symbolp function) (eq
(get function (quote byte-compile)) (quote cl-byte-compile-compiler-macro)))
(princ "This function has a compiler macro") (let ((lib (get function (quote
compiler-macro-file)))) (when (stringp lib) (princ (format " in `%s'" lib))
(with-current-buffer standard-output (save-excursion (re-search-backward
"`\\([^`']+\\)'" nil t) (help-xref-button 1 (quote help-function-cmacro)
function lib))))) (princ ".\n\n")) (let* ((advertised (gethash def
advertised-signature-table t)) (arglist (if (listp advertised) advertised
(help-function-arglist def))) (doc (condition-case err (documentation function)
(error (format "No Doc! %S" err)))) (usage (help-split-fundoc doc function)))
(with-current-buffer standard-output (unless (keymapp function) (if usage (setq
doc (cdr usage))) (let* ((use (cond ... ... ... ... ... ...)) (high
(help-highlight-arguments use doc))) (let ((fill-begin ...)) (insert (car high)
"\n") (fill-region fill-begin (point))) (setq doc (cdr high)))) (let*
((obsolete (and (symbolp function) (get function ...))) (use (car obsolete)))
(when obsolete (princ "\nThis function is obsolete") (when (nth 2 obsolete)
(insert (format " since %s" ...))) (insert (cond (... ...) (use ...) (t "."))
"\n")) (insert "\n" (or doc "Not documented."))))))
(let* ((advised (and (symbolp function) (featurep (quote advice))
(ad-get-advice-info function))) (real-function (or (and advised (let ((origname
...)) (and (fboundp origname) origname))) function)) (def (if (symbolp
real-function) (symbol-function real-function) function)) file-name string (beg
(if (commandp def) "an interactive " "a ")) (pt1 (with-current-buffer
(help-buffer) (point))) errtype) (setq string (cond ((or (stringp def) (vectorp
def)) "a keyboard macro") ((subrp def) (if (eq (quote unevalled) (cdr
(subr-arity def))) (concat beg "special form") (concat beg "built-in
function"))) ((byte-code-function-p def) (concat beg "compiled Lisp function"))
((symbolp def) (while (and (fboundp def) (symbolp (symbol-function def))) (setq
def (symbol-function def))) (or (fboundp def) (setq errtype (quote alias)))
(format "an alias for `%s'" def)) ((eq (car-safe def) (quote lambda)) (concat
beg "Lisp function")) ((eq (car-safe def) (quote macro)) "a Lisp macro") ((eq
(car-safe def) (quote closure)) (concat beg "Lisp closure")) ((eq (car-safe
def) (quote autoload)) (format "%s autoloaded %s" (if (commandp def) "an
interactive" "an") (if (eq (nth 4 def) (quote keymap)) "keymap" (if (nth 4 def)
"Lisp macro" "Lisp function")))) ((keymapp def) (let ((is-full nil) (elts
(cdr-safe def))) (while elts (if (char-table-p ...) (setq is-full t elts nil))
(setq elts (cdr-safe elts))) (if is-full "a full keymap" "a sparse keymap")))
(t ""))) (princ string) (if (eq errtype (quote alias)) (princ ",\nwhich is not
defined. Please make a bug report.") (with-current-buffer standard-output
(save-excursion (save-match-data (when (re-search-backward "alias for
`\\([^`']+\\)'" nil t) (help-xref-button 1 (quote help-function) def))))) (setq
file-name (find-lisp-object-file-name function def)) (when file-name (princ "
in `") (princ (if (eq file-name (quote C-source)) "C source code"
(file-name-nondirectory file-name))) (princ "'") (with-current-buffer
standard-output (save-excursion (re-search-backward "`\\([^`']+\\)'" nil t)
(help-xref-button 1 (quote help-function-def) function file-name)))) (princ
".") (with-current-buffer (help-buffer) (fill-region-as-paragraph
(save-excursion (goto-char pt1) (forward-line 0) (point)) (point))) (terpri)
(terpri) (when (commandp function) (let ((pt2 (with-current-buffer
(help-buffer) (point))) (remapped (command-remapping function))) (unless (memq
remapped (quote (ignore undefined))) (let ((keys ...) non-modified-keys) (if
(and ... ... ...) (princ "It is bound to many ordinary text characters.\n")
(dolist ... ...) (when remapped ... ... ...) (when keys ... ...) (when ... ...
...)))) (with-current-buffer (help-buffer) (fill-region-as-paragraph pt2
(point)) (unless (looking-back "\n\n") (terpri))))) (when (and (symbolp
function) (eq (get function (quote byte-compile)) (quote
cl-byte-compile-compiler-macro))) (princ "This function has a compiler macro")
(let ((lib (get function (quote compiler-macro-file)))) (when (stringp lib)
(princ (format " in `%s'" lib)) (with-current-buffer standard-output
(save-excursion (re-search-backward "`\\([^`']+\\)'" nil t) (help-xref-button 1
... function lib))))) (princ ".\n\n")) (let* ((advertised (gethash def
advertised-signature-table t)) (arglist (if (listp advertised) advertised
(help-function-arglist def))) (doc (condition-case err (documentation function)
(error (format "No Doc! %S" err)))) (usage (help-split-fundoc doc function)))
(with-current-buffer standard-output (unless (keymapp function) (if usage (setq
doc (cdr usage))) (let* ((use ...) (high ...)) (let (...) (insert ... "\n")
(fill-region fill-begin ...)) (setq doc (cdr high)))) (let* ((obsolete (and ...
...)) (use (car obsolete))) (when obsolete (princ "\nThis function is
obsolete") (when (nth 2 obsolete) (insert ...)) (insert (cond ... ... ...)
"\n")) (insert "\n" (or doc "Not documented.")))))))
describe-function-1(interactive-p)
describe-function(interactive-p)
call-interactively(describe-function nil nil)
In GNU Emacs 24.0.50.10 (x86_64-unknown-linux-gnu, X toolkit)
of 2011-03-28 on tbox
Windowing system distributor `Colin Harrison', version 11.0.60900031
configured using `configure '--exec-prefix=/opt/emacs/lucid'
'--prefix=/opt/emacs' '--with-x-toolkit=lucid''
--
Sam Steingold (http://sds.podval.org/) on CentOS release 5.5 (Final) X
http://jihadwatch.org http://thereligionofpeace.com http://camera.org
http://dhimmi.com http://openvotingconsortium.org http://memri.org
Vegetarians eat Vegetables, Humanitarians are scary.
- bug#8428: 24.0.50; describe-function is broken,
Sam Steingold <=