Subject: bug#22955: closed (Re: bug#22955: Acknowledgement (25.1.50; *Help* xref for generic methods broken))

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 17 Feb 2017 20:37:02 +0000

Your bug report

#22955: 25.1.50; *Help* xref for generic methods broken

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
22955: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22955
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#22955: Acknowledgement (25.1.50; *Help* xref for generic methods broken)
From: Eric Abrahamsen <[email-masked]>
To: [email-masked]
Date: Fri, 17 Feb 2017 12:36:13 -0800
List-Id: <debbugs-submit.debbugs.gnu.org>

This was not a bug. Will it let me close it?

Subject: 25.1.50; *Help* xref for generic methods broken
From: Eric Abrahamsen <[email-masked]>
To: [email-masked]
Date: Wed, 09 Mar 2016 12:16:56 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

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(#<marker (moves after insertion) at 276 in *Help*>)
  button-activate(#<marker (moves after insertion) at 276 in *Help*> 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