From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Sam Steingold Newsgroups: gmane.emacs.bugs Subject: bug#8428: 24.0.50; describe-function is broken Date: Tue, 05 Apr 2011 14:39:22 -0400 Message-ID: Reply-To: sds@gnu.org NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1302030960 21542 80.91.229.12 (5 Apr 2011 19:16:00 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 5 Apr 2011 19:16:00 +0000 (UTC) To: 8428@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Apr 05 21:15:50 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Q7Bj7-0004W1-4F for geb-bug-gnu-emacs@m.gmane.org; Tue, 05 Apr 2011 21:15:45 +0200 Original-Received: from localhost ([127.0.0.1]:36468 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q7Bbc-0004Xv-Ms for geb-bug-gnu-emacs@m.gmane.org; Tue, 05 Apr 2011 15:08:00 -0400 Original-Received: from [140.186.70.92] (port=39784 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q7Bax-0004Gk-BS for bug-gnu-emacs@gnu.org; Tue, 05 Apr 2011 15:07:20 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q7Bat-0006ue-Qg for bug-gnu-emacs@gnu.org; Tue, 05 Apr 2011 15:07:19 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:53364) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q7Bat-0006ua-P1 for bug-gnu-emacs@gnu.org; Tue, 05 Apr 2011 15:07:15 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1Q7BAZ-0007rx-5b; Tue, 05 Apr 2011 14:40:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Sam Steingold Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 05 Apr 2011 18:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 8428 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.130202879130225 (code B ref -1); Tue, 05 Apr 2011 18:40:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 5 Apr 2011 18:39:51 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Q7BAM-0007rR-SE for submit@debbugs.gnu.org; Tue, 05 Apr 2011 14:39:51 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Q7BAH-0007rD-B8 for submit@debbugs.gnu.org; Tue, 05 Apr 2011 14:39:49 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q7BA5-0007pj-T6 for submit@debbugs.gnu.org; Tue, 05 Apr 2011 14:39:40 -0400 Original-Received: from lists.gnu.org ([199.232.76.165]:33360) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q7BA5-0007pe-Ov for submit@debbugs.gnu.org; Tue, 05 Apr 2011 14:39:33 -0400 Original-Received: from [140.186.70.92] (port=42279 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q7BA4-0004JU-0e for bug-gnu-emacs@gnu.org; Tue, 05 Apr 2011 14:39:33 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q7BA2-0007oZ-FW for bug-gnu-emacs@gnu.org; Tue, 05 Apr 2011 14:39:31 -0400 Original-Received: from mail-vw0-f41.google.com ([209.85.212.41]:57236) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q7B9w-0007lD-8U; Tue, 05 Apr 2011 14:39:24 -0400 Original-Received: by vws4 with SMTP id 4so694250vws.0 for ; Tue, 05 Apr 2011 11:39:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:sender:from:to:subject:user-agent :mail-copies-to:return-receipt-to:reply-to:x-attribution :x-disclaimer:date:message-id:mime-version:content-type :content-transfer-encoding; bh=+qc/2cSTxPzu9tN8wJuGDukiosFEPJEqYmpNkkv7nPs=; b=dRbFQVFDIn+xZly4I7sD8lsBGMdhDtq0/gApd6+G3oB/Ic+tqCRHUqJlHKolYkyfOP l+VdEHURYpd5WH7+esaBggNRIWA5wHn5cugxiOwkgds3j4Vg2ZeY8u+T2wsQH9gXTqCX OFgghBpxbXXMdLdORCDTopwcyx/z6tQkjsl94= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:from:to:subject:user-agent:mail-copies-to:return-receipt-to :reply-to:x-attribution:x-disclaimer:date:message-id:mime-version :content-type:content-transfer-encoding; b=s/Sx7kbjA+CziT1txS8GBt3+ZsGm1nCTC0Vxi4OlqFHt80lx4cPcMdcCUS3lT4t3HN VNtvVnvYIKjuLOcUsoW9C+KjNPmaNREzGHCvq9G+KzU8/wIrwxEtsOOCs6vwQ71v6zHj OvBtvEF7eayoNhycp64+whf3uu5Nq/g46zQJ0= Original-Received: by 10.52.68.168 with SMTP id x8mr41359vdt.77.1302028763369; Tue, 05 Apr 2011 11:39:23 -0700 (PDT) Original-Received: from tbox.wtc.algo (rrcs-24-103-48-205.nyc.biz.rr.com [24.103.48.205]) by mx.google.com with ESMTPS id h18sm3769057vbr.4.2011.04.05.11.39.22 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 05 Apr 2011 11:39:22 -0700 (PDT) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) Mail-Copies-To: never X-Attribution: Sam X-Disclaimer: You should not expect anyone to agree with me. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Tue, 05 Apr 2011 14:40:03 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:45644 Archived-At: current bzr tip: emacs -q C-h f interactive-p RET standard-output =3D=3D t Debugger entered--Lisp error: (wrong-type-argument stringp t) set-buffer(t) (save-current-buffer (set-buffer standard-output) (save-excursion (save-m= atch-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 (wh= en (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 m= ake a bug report.") (with-current-buffer standard-output (save-excursion (s= ave-match-data (when (re-search-backward "alias for `\\([^`']+\\)'" nil t) = (help-xref-button 1 (quote help-function) def))))) (setq file-name (find-li= sp-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-excursi= on (re-search-backward "`\\([^`']+\\)'" nil t) (help-xref-button 1 (quote h= elp-function-def) function file-name)))) (princ ".") (with-current-buffer (= help-buffer) (fill-region-as-paragraph (save-excursion (goto-char pt1) (for= ward-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-modifi= ed-keys) (if (and (eq function ...) (vectorp ...) (consp ...)) (princ "It i= s 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-mod= ified-keys) (princ ".") (terpri))))) (with-current-buffer (help-buffer) (fi= ll-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 compile= r macro") (let ((lib (get function (quote compiler-macro-file)))) (when (st= ringp lib) (princ (format " in `%s'" lib)) (with-current-buffer standard-ou= tput (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)))) (usa= ge (help-split-fundoc doc function))) (with-current-buffer standard-output = (unless (keymapp function) (if usage (setq doc (cdr usage))) (let* ((use (c= ond ... ... ... ... ... ...)) (high (help-highlight-arguments use doc))) (l= et ((fill-begin ...)) (insert (car high) "\n") (fill-region fill-begin (poi= nt))) (setq doc (cdr high)))) (let* ((obsolete (and (symbolp function) (get= function ...))) (use (car obsolete))) (when obsolete (princ "\nThis functi= on 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-f= unction) (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 d= ef)) "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")) ((symbo= lp def) (while (and (fboundp def) (symbolp (symbol-function def))) (setq de= f (symbol-function def))) (or (fboundp def) (setq errtype (quote alias))) (= format "an alias for `%s'" def)) ((eq (car-safe def) (quote lambda)) (conca= t 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 (nt= h 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 spa= rse keymap"))) (t ""))) (princ string) (if (eq errtype (quote alias)) (prin= c ",\nwhich is not defined. Please make a bug report.") (with-current-buff= er standard-output (save-excursion (save-match-data (when (re-search-backwa= rd "alias for `\\([^`']+\\)'" nil t) (help-xref-button 1 (quote help-functi= on) def))))) (setq file-name (find-lisp-object-file-name function def)) (wh= en 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))) (terpr= i) (terpri) (when (commandp function) (let ((pt2 (with-current-buffer (help= -buffer) (point))) (remapped (command-remapping function))) (unless (memq r= emapped (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-c= ompiler-macro))) (princ "This function has a compiler macro") (let ((lib (g= et function (quote compiler-macro-file)))) (when (stringp lib) (princ (form= at " in `%s'" lib)) (with-current-buffer standard-output (save-excursion (r= e-search-backward "`\\([^`']+\\)'" nil t) (help-xref-button 1 ... function = lib))))) (princ ".\n\n")) (let* ((advertised (gethash def advertised-signat= ure-table t)) (arglist (if (listp advertised) advertised (help-function-arg= list def))) (doc (condition-case err (documentation function) (error (forma= t "No Doc! %S" err)))) (usage (help-split-fundoc doc function))) (with-curr= ent-buffer standard-output (unless (keymapp function) (if usage (setq doc (= cdr usage))) (let* ((use ...) (high ...)) (let (...) (insert ... "\n") (fil= l-region fill-begin ...)) (setq doc (cdr high)))) (let* ((obsolete (and ...= ...)) (use (car obsolete))) (when obsolete (princ "\nThis function is obso= lete") (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=3D/opt/emacs/lucid' '--prefix= =3D/opt/emacs' '--with-x-toolkit=3Dlucid'' --=20 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.