From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eric Abrahamsen Newsgroups: gmane.emacs.bugs Subject: bug#22955: 25.1.50; *Help* xref for generic methods broken Date: Wed, 09 Mar 2016 12:16:56 +0800 Message-ID: <87pov4ffpj.fsf@ericabrahamsen.net> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1457497119 6866 80.91.229.3 (9 Mar 2016 04:18:39 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 9 Mar 2016 04:18:39 +0000 (UTC) To: 22955@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Mar 09 05:18:24 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1adVZn-00062u-G0 for geb-bug-gnu-emacs@m.gmane.org; Wed, 09 Mar 2016 05:18:23 +0100 Original-Received: from localhost ([::1]:38955 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adVZm-0007xD-VE for geb-bug-gnu-emacs@m.gmane.org; Tue, 08 Mar 2016 23:18:22 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:39727) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adVZV-0007bz-Dd for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:18:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1adVZS-0005pU-7I for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:18:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:43239) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adVZS-0005pJ-2G for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:18:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1adVZR-0005Js-QQ for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:18:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eric Abrahamsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 09 Mar 2016 04:18:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 22955 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.145749705620394 (code B ref -1); Wed, 09 Mar 2016 04:18:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 9 Mar 2016 04:17:36 +0000 Original-Received: from localhost ([127.0.0.1]:40366 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adVZ2-0005Is-Ga for submit@debbugs.gnu.org; Tue, 08 Mar 2016 23:17:36 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:48627) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adVZ0-0005Ib-FF for submit@debbugs.gnu.org; Tue, 08 Mar 2016 23:17:34 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1adVYu-0005h6-4m for submit@debbugs.gnu.org; Tue, 08 Mar 2016 23:17:29 -0500 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:36966) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adVYu-0005h2-1R for submit@debbugs.gnu.org; Tue, 08 Mar 2016 23:17:28 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:39597) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adVYt-0007I0-0y for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:17:27 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1adVYp-0005gT-KY for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:17:26 -0500 Original-Received: from mail.ericabrahamsen.net ([50.56.99.223]:48861) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adVYp-0005g7-Dx for bug-gnu-emacs@gnu.org; Tue, 08 Mar 2016 23:17:23 -0500 Original-Received: from localhost (unknown [221.216.163.58]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id CF3241F4002 for ; Wed, 9 Mar 2016 04:17:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mail.ericabrahamsen.net; s=mail; t=1457497067; bh=bb31WpOVHr4piUDF+y7dP8qj+37NrJcysMUHpziWEAE=; h=From:To:Subject:Date:From; b=uN95UU/Pm7VRZGyGf4qrS5OtUhI9QnubfCIvsv5Y0UI1VVrTtBTpxjhFtgUpdsMoz 4pJrlw9MBCtPlV98mcZjr7YtOdvSfbmL0qNJCgJUOR2a8D1YoM/N9myHxde75u4KyA veGXdf69bFu4TFgcQrZuVscdFsDAwjze1dGC2PQI= User-Agent: Notmuch/0.21 (http://notmuchmail.org) Emacs/25.1.50.17 (x86_64-unknown-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:114622 Archived-At: If you `describe-function' on a generic method, the resulting *Help* buffer shows the various implementations correctly. However, clicking/RET on the implementation links fails with: Debugger entered--Lisp error: (wrong-number-of-arguments (lambda (fun file) (require (quote find-func)) (if (eq file (quote C-source)) (progn (setq file (help-C-file-name (indirect-function fun) (quote fun))))) (let ((location (find-function-search-for-symbol fun nil file))) (my-find-symbol-switch-to-buffer (car location)) (if (cdr location) (goto-char (cdr location)) (message "Unable to find location in file")))) 3) help-do-xref(nil (lambda (fun file) (require (quote find-func)) (if (eq file (quote C-source)) (progn (setq file (help-C-file-name (indirect-function fun) (quote fun))))) (let ((location (find-function-search-for-symbol fun nil file))) (my-find-symbol-switch-to-buffer (car location)) (if (cdr location) (goto-char (cdr location)) (message "Unable to find location in file")))) ((bbdb-db-load bbdb-db) "/home/eric/.emacs.d/bbdb/lisp/bbdb.el" cl-defmethod)) help-button-action(#) button-activate(# nil) push-button(276) funcall-interactively(push-button 276) call-interactively(push-button nil nil) command-execute(push-button) Basically, when `help-button-action' does this: (help-do-xref nil (button-get button 'help-function) (button-get button 'help-args)) There are three 'help-args (the first arg is the specializer -- actually, maybe there as many args as there are specializers? don't know), but the 'help-function only takes two args. Hope that's enough to get it there! In GNU Emacs 25.1.50.17 (x86_64-unknown-linux-gnu, GTK+ Version 3.18.8) of 2016-03-08 built on clem Repository revision: 59c7a5d71145d88933a535e222bdf30105e7d382 Windowing system distributor 'The X.Org Foundation', version 11.0.11801000 Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LC_CTYPE: zh_CN.UTF-8 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Emacs-Lisp Minor modes in effect: magit-auto-revert-mode: t global-git-commit-mode: t paredit-mode: t diff-auto-refine-mode: t recentf-mode: t dired-async-mode: t ace-pinyin-global-mode: t ace-pinyin-mode: t helm-mode: t async-bytecomp-package-mode: t shell-dirtrack-mode: t helm-adaptive-mode: t projectile-global-mode: t projectile-mode: t company-flx-mode: t global-company-mode: t company-mode: t display-time-mode: t show-paren-mode: t savehist-mode: t url-handler-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t