GNU bug report logs -
#8428
24.0.50; describe-function is broken
Previous Next
Reported by: sds <at> gnu.org
Date: Tue, 5 Apr 2011 18:40:02 UTC
Severity: normal
Tags: notabug
Found in version 24.0.50
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 8428 in the body.
You can then email your comments to 8428 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8428
; Package
emacs
.
(Tue, 05 Apr 2011 18:40:03 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
sds <at> gnu.org
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Tue, 05 Apr 2011 18:40:03 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
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.
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#8428
; Package
emacs
.
(Tue, 05 Apr 2011 19:27:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 8428 <at> debbugs.gnu.org (full text, mbox):
> From: Sam Steingold <sds <at> gnu.org>
> Date: Tue, 05 Apr 2011 14:39:22 -0400
> Cc:
>
> 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)
Crystal ball says that you didn't bootstrap lately.
bug closed, send any further explanations to
8428 <at> debbugs.gnu.org and sds <at> gnu.org
Request was from
Glenn Morris <rgm <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Tue, 12 Apr 2011 17:19:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 11 May 2011 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 14 years and 44 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.