From unknown Mon Aug 18 00:03:45 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#8803 <8803@debbugs.gnu.org> To: bug#8803 <8803@debbugs.gnu.org> Subject: Status: 23.3; backtrace should use find-function-source-path to find source Reply-To: bug#8803 <8803@debbugs.gnu.org> Date: Mon, 18 Aug 2025 07:03:45 +0000 retitle 8803 23.3; backtrace should use find-function-source-path to find s= ource reassign 8803 emacs submitter 8803 Ivan Kanis severity 8803 minor thanks From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 05 14:20:17 2011 Received: (at submit) by debbugs.gnu.org; 5 Jun 2011 18:20:17 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QTHvs-0003XE-5W for submit@debbugs.gnu.org; Sun, 05 Jun 2011 14:20:17 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QTGAH-00014I-Ti for submit@debbugs.gnu.org; Sun, 05 Jun 2011 12:27:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QTGAA-0001dv-Md for submit@debbugs.gnu.org; Sun, 05 Jun 2011 12:26:56 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_DKIM_INVALID, T_FRT_FOLLOW1,T_RP_MATCHES_RCVD autolearn=unavailable version=3.3.1 Received: from lists.gnu.org ([140.186.70.17]:55546) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QTGAA-0001dn-Kv for submit@debbugs.gnu.org; Sun, 05 Jun 2011 12:26:54 -0400 Received: from eggs.gnu.org ([140.186.70.92]:46411) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QTGA8-00049n-F0 for bug-gnu-emacs@gnu.org; Sun, 05 Jun 2011 12:26:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QTGA6-0001cu-Ak for bug-gnu-emacs@gnu.org; Sun, 05 Jun 2011 12:26:52 -0400 Received: from kanis.fr ([174.136.103.202]:42782) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QTGA5-0001bi-OZ for bug-gnu-emacs@gnu.org; Sun, 05 Jun 2011 12:26:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=kanis.fr; s=alpha; h=Content-Type:MIME-Version:Message-ID:Date:Subject:To:From; bh=jL1nn8JQ0oX2X+y3YyFp3Y67nKIaersxDslcEAB+YTM=; b=LisdruNLnhv4paWLS9PUqmFItTjbe4ZWJtbfDtYc0HOky5y5wMiBVhDiSz84MCQGElMtMAeOH6+AMOilvN5oOtfX4R7fowV1Az8IBuOMLQHJXJUXGbPTTTOuVwqmxYJ4; Received: from nantes.visionobjects.com ([92.103.229.106] helo=tao) by kanis.fr with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1QTG9x-0005c2-G7 for bug-gnu-emacs@gnu.org; Sun, 05 Jun 2011 09:26:42 -0700 From: Ivan Kanis To: bug-gnu-emacs@gnu.org Subject: 23.3; backtrace should use find-function-source-path to find source Date: Sun, 05 Jun 2011 18:26:28 +0200 Message-ID: <87k4d0gs7f.fsf@kanis.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 140.186.70.17 X-Spam-Score: -4.3 (----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sun, 05 Jun 2011 14:20:15 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -4.8 (----) 1 - create directory ~/source and ~/compile 2 - create the file ~/source/foo.el with the following content: (defun foo () (interactive) (error "foo")) (setq find-function-source-path (list (expand-file-name "~/source"))) (setq debug-on-error t) ;;;; eval the following two expressions ;; (setq load-path (cons (expand-file-name "~/compile") load-path)) ;; (require 'foo)) (provide 'foo) 3 - M-x byte-compile-file 4 - move ~/source foo.elc to ~/compile 5 - in foo.el evaluate the two lines in comment (C-x C-e) 6 - M-x foo should show a backtrace 7 - on the backtrace click on foo You should get the following error: find-library-name: Can't find library /home/ubuntu/compile/foo.el I expect emacs to load foo.el since find-function-source-path is defined. The following trivial patch fixes the problem: --- find-func.el 2011-06-05 18:23:48.097558000 +0200 +++ find-func-ivan.el 2011-06-05 18:24:18.141247000 +0200 @@ -156,6 +156,9 @@ (locate-file library (or find-function-source-path load-path) load-file-rep-suffixes) + (locate-file (file-name-sans-extension (file-name-nondirectory library)) + (or find-function-source-path load-path) + (find-library-suffixes)) (error "Can't find library %s" library))) (defvar find-function-C-source-directory In GNU Emacs 23.3.2 (i686-pc-linux-gnu, GTK+ Version 2.22.0) of 2011-03-16 on tao Windowing system distributor `The X.Org Foundation', version 11.0.10900000 configured using `configure '--prefix=/home/ubuntu/emacs'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: fr_FR.UTF-8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Compilation Minor modes in effect: erc-track-mode: t erc-track-minor-mode: t tracking-mode: t erc-ring-mode: t erc-netsplit-mode: t erc-match-mode: t erc-pcomplete-mode: t erc-button-mode: t erc-fill-mode: t erc-stamp-mode: t erc-autojoin-mode: t erc-spelling-mode: t erc-irccontrols-mode: t erc-noncommands-mode: t erc-scrolltobottom-mode: t diff-auto-refine-mode: t shell-dirtrack-mode: t icomplete-mode: t global-auto-complete-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t Recent input: ) C-x C-s w h e n C-n C-n C-n C-e C-x C-s C-/ C-/ C-/ C-/ C-/ C-a C-k C-n C-n C-n ( p r o v i d e SPC ' f o o ) C-x C-s M-x C-p C-p C-e M-x y M-i s M-p M-p C-x b f o r e u q q u i r e SPC C-e ' ) ) C-x C-s M-x C-a ; ; SPC C-k e v a l SPC t h e SPC f o l l o w i n g SPC t o w o SPC s e e x p r e s s i o n s C-n C-n C-a ; ; ; ; SPC ; ; SPC C-x C-s M-i s M-p M-p M-x c o m p i e C-g C-x b f o M-x M-i s M-p M-p M-k p p M-x C-g M-x b u g - C-g M-x r e p o r t b u g C-g C-o M-x b u g - r e p r e p o r t - e m a b u g Recent messages: Quit Compiling /home/ubuntu/source/foo.el...done Wrote /home/ubuntu/source/foo.elc History item: 1 History item: 2 Quit [2 times] Making completion list... Quit Making completion list... Load-path shadows: /home/ubuntu/compile/foo hides ~/tmp/foo /home/ubuntu/.emacs.d/misc/whitespace hides /home/ubuntu/emacs/share/emacs/23.3/lisp/whitespace /home/ubuntu/.emacs.d/misc/time hides /home/ubuntu/emacs/share/emacs/23.3/lisp/time /home/ubuntu/.emacs.d/org/org-publish hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-publish /home/ubuntu/.emacs.d/org/org-latex hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-latex /home/ubuntu/.emacs.d/org/org-gnus hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-gnus /home/ubuntu/.emacs.d/org/org-compat hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-compat /home/ubuntu/.emacs.d/org/org-jsinfo hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-jsinfo /home/ubuntu/.emacs.d/org/org-irc hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-irc /home/ubuntu/.emacs.d/org/org-install hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-install /home/ubuntu/.emacs.d/org/org-inlinetask hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-inlinetask /home/ubuntu/.emacs.d/org/org-info hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-info /home/ubuntu/.emacs.d/org/org-indent hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-indent /home/ubuntu/.emacs.d/org/org-id hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-id /home/ubuntu/.emacs.d/org/org-icalendar hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-icalendar /home/ubuntu/.emacs.d/org/org-html hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-html /home/ubuntu/.emacs.d/org/org-habit hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-habit /home/ubuntu/.emacs.d/org/org hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org /home/ubuntu/.emacs.d/org/org-xoxo hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-xoxo /home/ubuntu/.emacs.d/org/org-wl hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-wl /home/ubuntu/.emacs.d/org/org-w3m hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-w3m /home/ubuntu/.emacs.d/org/org-vm hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-vm /home/ubuntu/.emacs.d/org/org-timer hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-timer /home/ubuntu/.emacs.d/org/org-table hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-table /home/ubuntu/.emacs.d/org/org-src hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-src /home/ubuntu/.emacs.d/org/org-rmail hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-rmail /home/ubuntu/.emacs.d/org/org-remember hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-remember /home/ubuntu/.emacs.d/org/org-protocol hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-protocol /home/ubuntu/.emacs.d/org/org-plot hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-plot /home/ubuntu/.emacs.d/org/org-mouse hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-mouse /home/ubuntu/.emacs.d/org/org-mobile hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-mobile /home/ubuntu/.emacs.d/org/org-mhe hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-mhe /home/ubuntu/.emacs.d/org/org-mew hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-mew /home/ubuntu/.emacs.d/org/org-macs hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-macs /home/ubuntu/.emacs.d/org/org-mac-message hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-mac-message /home/ubuntu/.emacs.d/org/org-list hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-list /home/ubuntu/.emacs.d/org/org-freemind hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-freemind /home/ubuntu/.emacs.d/org/org-footnote hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-footnote /home/ubuntu/.emacs.d/org/org-feed hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-feed /home/ubuntu/.emacs.d/org/org-faces hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-faces /home/ubuntu/.emacs.d/org/org-exp hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-exp /home/ubuntu/.emacs.d/org/org-exp-blocks hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-exp-blocks /home/ubuntu/.emacs.d/org/org-docbook hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-docbook /home/ubuntu/.emacs.d/org/org-datetree hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-datetree /home/ubuntu/.emacs.d/org/org-crypt hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-crypt /home/ubuntu/.emacs.d/org/org-colview hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-colview /home/ubuntu/.emacs.d/org/org-clock hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-clock /home/ubuntu/.emacs.d/org/org-bibtex hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-bibtex /home/ubuntu/.emacs.d/org/org-bbdb hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-bbdb /home/ubuntu/.emacs.d/org/org-attach hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-attach /home/ubuntu/.emacs.d/org/org-ascii hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-ascii /home/ubuntu/.emacs.d/org/org-archive hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-archive /home/ubuntu/.emacs.d/org/org-agenda hides /home/ubuntu/emacs/share/emacs/23.3/lisp/org/org-agenda /home/ubuntu/.emacs.d/misc/erc-goodies hides /home/ubuntu/emacs/share/emacs/23.3/lisp/erc/erc-goodies /home/ubuntu/.emacs.d/emms/tq hides /home/ubuntu/emacs/share/emacs/23.3/lisp/emacs-lisp/tq /home/ubuntu/.emacs.d/misc/appt hides /home/ubuntu/emacs/share/emacs/23.3/lisp/calendar/appt /home/ubuntu/.emacs.d/misc/sym-comp hides /home/ubuntu/emacs/share/emacs/23.3/lisp/obsolete/sym-comp Features: (shadow guess-lang emacsbug make-mode log-view ibuf-ext ibuffer ffap etags descr-text info cc-mode cc-fonts cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs cl-specs edebug appt diary-lib diary-loaddefs smiley gnus-async gnus-bcklg gnus-dup gnus-ml disp-table gnus-topic parse-time tls pop3 nnml nndraft nnmh bbdb-gnus bbdb-snarf mail-extr auth-source gnus-agent gnus-srvr gnus-score score-mode nnvirtual nntp gnus-cache gnus-cite cookie1 gnus-fun gnus-msg gnus-art mm-uu mml2015 epg-config mm-view smime dig gnus-sum nnoo gnus-group gnus-undo nnmail mail-source gnus-start gnus-spec gnus-int gnus-range gnus-win message ecomplete rfc822 mml mml-sec password-cache mm-decode mm-bodies mm-encode mailcap mail-parse rfc2231 rfc2047 rfc2045 qp ietf-drums gmm-utils mailheader canlock hashcash gnus gnus-ems nnheader gnus-util netrc mail-utils bbdb-gui bbdb-picture bbdb-com mailabbrev bbdb bookmark org-capture org-mks newcomment w3m-form w3m-symbol w3m-bookmark w3m-tabmenu w3m-session w3m-search w3m doc-view jka-compr image-mode timezone w3m-hist w3m-fb w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util org-wl org-w3m org-vm org-rmail org-mhe org-mew org-irc org-jsinfo org-infojs org-html org-exp ob-exp org-exp-blocks org-agenda org-info org-gnus org-docview org-bibtex org-bbdb org byte-opt bytecomp byte-compile ob-emacs-lisp ob-keys ob-comint ob-tangle ob-ref ob-lob ob-table ob org-footnote org-src org-list org-faces org-compat org-entities org-macs japan-util kkc ja-dic-utl erc-track garak notify dbus-util assoc dbus xml tree-widget elim warnings browse-url cl cl-19 lui tracking incomplete erc-ring erc-netsplit erc-match erc-pcomplete pcomplete erc-button erc-fill erc-stamp erc-join erc-spelling flyspell ispell erc-goodies erc erc-backend erc-compat pp gnus-dired log-edit pcvs-util add-log diff-mode vc-git vc-bzr sha1 hex-util vc-sccs vc-svn vc-cvs vc-rcs vc-dir ewoc vc vc-dispatcher dirtrack ansi-color shell mule-util tabify vc-hg autoinsert noutline outline debug thingatpt find-func icomplete emms-player-mplayer emms-player-simple url-util url-parse url-vars mm-util mail-prsvr format-spec emms-mark emms-info-mp3info emms-tag-editor emms-setup emms-browser sort emms-playlist-sort emms-score emms-cache emms-info later-do emms-playlist-mode emms-source-playlist emms-source-file emms emms-compat swbuff multi-isearch ido uniquify advice advice-preload paren eldoc help-fns init xcscope ivan-w3m ivan-term ivan-slime ivan-re-builder quail help-mode view ivan-org ivan-newsticker ivan-muse ivan-message ivan-japanese ivan-gnus grep compile comint ivan-french easy-mmode ivan-english ivan-emms ivan-elim dired-x dired-aux dired ivan-comint cal-iso cal-menu calendar cal-loaddefs bs ivan-bbdb ivan-anki tex-site ring caps-mode ivan-common-code auto-complete-config auto-complete popup regexp-opt rx cus-edit easymenu cus-start cus-load wid-edit ivan-var ivan-keymap edmacro kmacro ivan-fun ivan-face ivan-load time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd font-setting tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mldrag mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev loaddefs button minibuffer faces cus-face files text-properties overlay md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind font-render-setting gtk x-toolkit x multi-tty emacs) -- Ivan Kanis http://kanis.fr Life is not about finding our limitations, it's about finding our infinity. -- Herbie Hancock From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 20 16:57:33 2011 Received: (at 8803) by debbugs.gnu.org; 20 Jun 2011 20:57:34 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QYlXJ-0003wP-Mt for submit@debbugs.gnu.org; Mon, 20 Jun 2011 16:57:33 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181] helo=ironport2-out.pppoe.ca) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QYlXH-0003w8-Sn for 8803@debbugs.gnu.org; Mon, 20 Jun 2011 16:57:32 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av0EAN2z/01FxL0s/2dsb2JhbABTpmR4iHPAAIYqBJ1ZhCI X-IronPort-AV: E=Sophos;i="4.65,396,1304308800"; d="scan'208";a="116722712" Received: from 69-196-189-44.dsl.teksavvy.com (HELO pastel.home) ([69.196.189.44]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 20 Jun 2011 16:57:25 -0400 Received: by pastel.home (Postfix, from userid 20848) id 9B02D59011; Mon, 20 Jun 2011 16:57:24 -0400 (EDT) From: Stefan Monnier To: Ivan Kanis Subject: Re: bug#8803: 23.3; backtrace should use find-function-source-path to find source Message-ID: References: <87k4d0gs7f.fsf@kanis.fr> Date: Mon, 20 Jun 2011 16:57:24 -0400 In-Reply-To: <87k4d0gs7f.fsf@kanis.fr> (Ivan Kanis's message of "Sun, 05 Jun 2011 18:26:28 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.1 (--) X-Debbugs-Envelope-To: 8803 Cc: 8803@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.1 (--) > find-library-name: Can't find library /home/ubuntu/compile/foo.el > I expect emacs to load foo.el since find-function-source-path is > defined. The problem here is that we use an absolute file name, rather than a relative one. > @@ -156,6 +156,9 @@ > (locate-file library > (or find-function-source-path load-path) > load-file-rep-suffixes) > + (locate-file (file-name-sans-extension (file-name-nondirectory library)) > + (or find-function-source-path load-path) > + (find-library-suffixes)) > (error "Can't find library %s" library))) But this will still fail for files such as Semantic's which are placed in subdirectories (e.g. loaded with (require 'foo/bar)). We really need to record both the absolute file name and the relative file name so that find-library-name can try both. In the mean time, does the patch below work for you? Stefan === modified file 'lisp/emacs-lisp/find-func.el' --- lisp/emacs-lisp/find-func.el 2011-01-25 04:08:28 +0000 +++ lisp/emacs-lisp/find-func.el 2011-06-20 20:55:50 +0000 @@ -141,6 +141,15 @@ (dolist (suffix (get-load-suffixes) (nreverse suffixes)) (unless (string-match "elc" suffix) (push suffix suffixes))))) +(defun find-library--load-name (library) + (let ((name library)) + (dolist (dir load-path) + (let ((rel (file-relative-name library dir))) + (if (and (not (string-match "\\`\\.\\./" rel)) + (< (length rel) (length name))) + (setq name rel)))) + (unless (equal name library) name))) + (defun find-library-name (library) "Return the absolute file name of the Emacs Lisp source of LIBRARY. LIBRARY should be a string (the name of the library)." @@ -155,6 +164,16 @@ (locate-file library (or find-function-source-path load-path) load-file-rep-suffixes) + (when (file-name-absolute-p library) + (let ((rel (find-library--load-name library))) + (when rel + (or + (locate-file rel + (or find-function-source-path load-path) + (find-library-suffixes)) + (locate-file rel + (or find-function-source-path load-path) + load-file-rep-suffixes))))) (error "Can't find library %s" library))) (defvar find-function-C-source-directory From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 30 23:16:07 2011 Received: (at 8803-done) by debbugs.gnu.org; 1 Jul 2011 03:16:08 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QcUD8-00030q-UC for submit@debbugs.gnu.org; Thu, 30 Jun 2011 23:16:07 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181] helo=ironport2-out.pppoe.ca) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QcUD7-00030I-Ay for 8803-done@debbugs.gnu.org; Thu, 30 Jun 2011 23:16:05 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av0EALI6DU5MCqDH/2dsb2JhbABSp1x4iHnAQ4YyBJ5RhCs X-IronPort-AV: E=Sophos;i="4.65,456,1304308800"; d="scan'208";a="118275688" Received: from 76-10-160-199.dsl.teksavvy.com (HELO pastel.home) ([76.10.160.199]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 30 Jun 2011 23:15:59 -0400 Received: by pastel.home (Postfix, from userid 20848) id 4C20A5912D; Thu, 30 Jun 2011 23:15:59 -0400 (EDT) From: Stefan Monnier To: Ivan Kanis Subject: Re: bug#8803: 23.3; backtrace should use find-function-source-path to find source Message-ID: References: <87k4d0gs7f.fsf@kanis.fr> Date: Thu, 30 Jun 2011 23:15:59 -0400 In-Reply-To: (Stefan Monnier's message of "Mon, 20 Jun 2011 16:57:24 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.1 (--) X-Debbugs-Envelope-To: 8803-done Cc: 8803-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.1 (--) > In the mean time, does the patch below work for you? I installed it and assume it's fixed. Please reopen the bug if not. Stefan From unknown Mon Aug 18 00:03:45 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 29 Jul 2011 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator