unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#22955: 25.1.50; *Help* xref for generic methods broken
@ 2016-03-09  4:16 Eric Abrahamsen
  2016-03-09 20:19 ` Dmitry Gutov
       [not found] ` <handler.22955.B.145749705620394.ack@debbugs.gnu.org>
  0 siblings, 2 replies; 4+ messages in thread
From: Eric Abrahamsen @ 2016-03-09  4:16 UTC (permalink / raw)
  To: 22955


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





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#22955: 25.1.50; *Help* xref for generic methods broken
  2016-03-09  4:16 bug#22955: 25.1.50; *Help* xref for generic methods broken Eric Abrahamsen
@ 2016-03-09 20:19 ` Dmitry Gutov
  2016-03-10  1:53   ` Eric Abrahamsen
       [not found] ` <handler.22955.B.145749705620394.ack@debbugs.gnu.org>
  1 sibling, 1 reply; 4+ messages in thread
From: Dmitry Gutov @ 2016-03-09 20:19 UTC (permalink / raw)
  To: Eric Abrahamsen, 22955

On 03/09/2016 06:16 AM, Eric Abrahamsen wrote:
>
> 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:

Have you tried it with a build from emacs-25?

It seems to work fine here, at least for xref-backend-definitions and 
xref-backend-apropos.

> 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)

What's that my-find-symbol-switch-to-buffer in the backtrace?





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#22955: 25.1.50; *Help* xref for generic methods broken
  2016-03-09 20:19 ` Dmitry Gutov
@ 2016-03-10  1:53   ` Eric Abrahamsen
  0 siblings, 0 replies; 4+ messages in thread
From: Eric Abrahamsen @ 2016-03-10  1:53 UTC (permalink / raw)
  To: Dmitry Gutov; +Cc: 22955


On 03/09/16 22:19 PM, Dmitry Gutov wrote:
> On 03/09/2016 06:16 AM, Eric Abrahamsen wrote:
>>
>> 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:
>
> Have you tried it with a build from emacs-25?
>
> It seems to work fine here, at least for xref-backend-definitions and
> xref-backend-apropos.
>
>> 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)
>
> What's that my-find-symbol-switch-to-buffer in the backtrace?

Well, damn -- my apologies for not trying this with emacs -Q. I had some
long-forgotten customizations causing the problem. Sorry for the noise!





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#22955: Acknowledgement (25.1.50; *Help* xref for generic methods broken)
       [not found] ` <handler.22955.B.145749705620394.ack@debbugs.gnu.org>
@ 2017-02-17 20:36   ` Eric Abrahamsen
  0 siblings, 0 replies; 4+ messages in thread
From: Eric Abrahamsen @ 2017-02-17 20:36 UTC (permalink / raw)
  To: 22955-done

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





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-02-17 20:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-09  4:16 bug#22955: 25.1.50; *Help* xref for generic methods broken Eric Abrahamsen
2016-03-09 20:19 ` Dmitry Gutov
2016-03-10  1:53   ` Eric Abrahamsen
     [not found] ` <handler.22955.B.145749705620394.ack@debbugs.gnu.org>
2017-02-17 20:36   ` bug#22955: Acknowledgement (25.1.50; *Help* xref for generic methods broken) Eric Abrahamsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).