From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#19466: 25.0.50; xref-find-def doesn't find C functions Date: Wed, 21 Jan 2015 11:49:34 +0100 Message-ID: <54BF843E.10907@gmx.at> References: <8361cucl3u.fsf@gnu.org> <54A230CD.3040309@yandex.ru> <83vbktb1ct.fsf@gnu.org> <54A2EE15.3020406@yandex.ru> <831tnhasx0.fsf@gnu.org> <54A6DAF6.5070605@yandex.ru> <831tna9tmr.fsf@gnu.org> <54A9C94F.8040701@yandex.ru> <83vbkl99vm.fsf@gnu.org> <54B8878A.4050506@yandex.ru> <54B8C22B.3080200@gmx.at> <54BC7A77.5020307@yandex.ru> <54BCC033.2010104@gmx.at> <54BD076E.6090707@yandex.ru> <54BE0B5A.6060706@gmx.at> <54BE4693.5050804@yandex.ru> <54BE6B59.5090404@gmx.at> <54BF5345.9090303@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1421837418 21790 80.91.229.3 (21 Jan 2015 10:50:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 21 Jan 2015 10:50:18 +0000 (UTC) Cc: 19466@debbugs.gnu.org, Helmut Eller To: Dmitry Gutov , Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Jan 21 11:50:13 2015 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 1YDsrU-0002OK-9x for geb-bug-gnu-emacs@m.gmane.org; Wed, 21 Jan 2015 11:50:12 +0100 Original-Received: from localhost ([::1]:47439 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YDsrS-0005ni-Mo for geb-bug-gnu-emacs@m.gmane.org; Wed, 21 Jan 2015 05:50:10 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36352) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YDsrO-0005kY-Em for bug-gnu-emacs@gnu.org; Wed, 21 Jan 2015 05:50:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YDsrL-0001Yv-2P for bug-gnu-emacs@gnu.org; Wed, 21 Jan 2015 05:50:06 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:60830) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YDsrK-0001YE-V2 for bug-gnu-emacs@gnu.org; Wed, 21 Jan 2015 05:50:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1YDsrK-0003Wy-B9 for bug-gnu-emacs@gnu.org; Wed, 21 Jan 2015 05:50:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 21 Jan 2015 10:50:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 19466 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 19466-submit@debbugs.gnu.org id=B19466.142183739013550 (code B ref 19466); Wed, 21 Jan 2015 10:50:02 +0000 Original-Received: (at 19466) by debbugs.gnu.org; 21 Jan 2015 10:49:50 +0000 Original-Received: from localhost ([127.0.0.1]:51289 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YDsr7-0003WT-EV for submit@debbugs.gnu.org; Wed, 21 Jan 2015 05:49:49 -0500 Original-Received: from mout.gmx.net ([212.227.15.15]:62577) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YDsr5-0003WG-TC for 19466@debbugs.gnu.org; Wed, 21 Jan 2015 05:49:48 -0500 Original-Received: from [188.22.44.50] ([188.22.44.50]) by mail.gmx.com (mrgmx003) with ESMTPSA (Nemesis) id 0LaoHI-1XTaou06ZM-00kQbo; Wed, 21 Jan 2015 11:49:40 +0100 In-Reply-To: <54BF5345.9090303@yandex.ru> X-Provags-ID: V03:K0:NyNSFKa2gj6Tkon3I9vGK8/ejbPnO4feHN7vCpU5fhAAY/Sok8H btQDht6BHqSe0KTIGm6fUc87hIUER4KE2jU5M2nXZCD9tCETRNk2QLNzUoW5+P3wFrsPF9h 8yqkzXIf0p4qfzTjWib0JOWBoZw9VC3kXxPnkX10OY6U5r6WPvsSJoFdVpxG6e0EnKNf1Ec tECnGYzNwoIeytCtpTiuA== X-UI-Out-Filterresults: notjunk:1; X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x 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: , 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:98538 Archived-At: > Yeah, both should still work. I've pushed the buffer-killing implementation, please take a look. The idea to do it via the KILL argument is good. I think some doc-strings are bad. For example, instead of (defvar-local xref--selected nil "t if the current buffer has ever been selected. Used for temporary buffers.") I'd say something like (defvar-local xref--current nil "Non-nil if this buffer was current once while finding xrefs.") And for `xref-quit' I'd describe the standard behavior first and the KILL behavior afterwards. Also I'm not sure it it's just cosmetics but shouldn't the (pcase-dolist (`(,buf . ,win) history) (when (and (window-live-p win) (eq buf (window-buffer win))) (quit-window nil win))) precede the (when kill (let ((xref--inhibit-mark-selected t) kill-buffer-query-functions) (dolist (buf xref--temporary-buffers) (unless (buffer-local-value 'xref--selected buf) (kill-buffer buf))) (setq xref--temporary-buffers nil))) part? I can't test it currently because I always get Debugger entered--Lisp error: (args-out-of-range "" 0) help-function-arglist(#[257 "\300\207" ["(No location)"] 2 "(No location)\n\n(fn ##)"] preserve-names) eieio--defmethod(xref-location-group nil xref-bogus-location #[257 "\300\207" ["(No location)"] 2 "(No location)\n\n(fn ##)"]) byte-code("\300\301\302\301\303\"\"\210\304\301\303\305\306$\210\300\307\302\307\303\"\"\210\304\307\303\305\310$\207" [eieio--defalias xref-location-marker eieio--defgeneric-init-form nil eieio--defmethod xref-bogus-location #[257 "\300\301\302\303\"\"\207" [user-error "%s" eieio-oref :message] 6 "\n\n(fn L)"] xref-location-group #[257 "\300\207" ["(No location)"] 2 "(No location)\n\n(fn ##)"]] 5) autoload-do-load((autoload "xref" 1640080 t nil) xref-find-definitions) command-execute(xref-find-definitions) even after a bootstrap. > One drawback comes to mind: > > xref-goto-xref calls xref-quit without the KILL argument, so the temporary buffers are not cleared if you make a choice and press RET. You can redisplay the *xref* buffer and provide the KILL there. >> previous-/next-history-element > > Not sure what these are. Something like typing M-. doing something else and typing M-. again. At this time up/down should get you the next/previous history elements of your xref searches. > Depends on what you want each of them to do. > > debugger-mode should probably set both relevant vars to the same values as emacs-lisp-mode. help-mode and Custom-mode - maybe too, although they might use some custom logic. > > In Info-mode, xref-find-function could use the index and the search functionality. Will there be a canonical way to add these? martin