[slime-devel] xref issue
Carlos Konstanski
ckonstanski at pippiandcarlos.com
Thu Aug 14 16:18:00 UTC 2008
On Thu, 14 Aug 2008, Carlos Konstanski wrote:
> Date: Thu, 14 Aug 2008 10:08:24 -0600 (MDT)
> From: Carlos Konstanski <ckonstanski at pippiandcarlos.com>
> To: slime-devel at common-lisp.net
> Subject: [slime-devel] xref issue
>
> I've been seeing this problem the last few days when using M-. to follow a
> symbol's definition:
>
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
> set-buffer(nil)
> (save-current-buffer (set-buffer standard-output) (prog1 (progn ... ...
> ... ... ...) (assert ...) (setq buffer-read-only t)
> (slime-init-popup-buffer vars%)))
> (with-current-buffer standard-output (prog1 (progn ... ... ... ... ...)
> (assert ...) (setq buffer-read-only t) (slime-init-popup-buffer vars%)))
> (let* ((vars% ...) (standard-output ...)) (with-current-buffer
> standard-output (prog1 ... ... ... ...)))
> (slime-with-popup-buffer (xref-buffer-name% package t emacs-snapshot)
> (slime-xref-mode) (slime-set-truncate-lines) (setq
> slime-popup-buffer-quit-function (quote slime-xref-quit)) (erase-buffer)
> (prog1 (progn ... ... ... ...) (assert ...)
> (shrink-window-if-larger-than-buffer)))
> (let ((xref-buffer-name% ...)) (slime-with-popup-buffer (xref-buffer-name%
> package t emacs-snapshot) (slime-xref-mode) (slime-set-truncate-lines)
> (setq slime-popup-buffer-quit-function ...) (erase-buffer) (prog1 ... ...
> ...)))
> (slime-with-xref-buffer (type symbol package emacs-snapshot)
> (slime-insert-xrefs xrefs) (goto-char (point-min)) (forward-line)
> (skip-chars-forward " "))
> (if (null xrefs) (message "No references found for %s." symbol) (setq
> slime-next-location-function (quote slime-goto-next-xref))
> (slime-with-xref-buffer (type symbol package emacs-snapshot)
> (slime-insert-xrefs xrefs) (goto-char ...) (forward-line)
> (skip-chars-forward " ")))
> slime-show-xrefs((("/home/ckonstanski/IandC/dev/svn/iclisp/araneida/web/graph/tracker-graph.lisp"
> ("(DEFGENERIC PLOT-GRAPHS (TRACKER-GRAPH ROOT-DIR))" ...) ("(DEFMETHOD
> PLOT-GRAPHS TRACKER-GRAPH T)" ...))) definition "plot-graphs" "#:iclisp")
> (cond ((null xrefs) (error "No known definition for: %s (in %s)" name
> ...)) (1loc (slime-push-definition-stack) (slime-pop-to-location ...
> where)) ((slime-length= xrefs 1) (error "%s" ...)) (t (slime-show-xrefs
> file-alist ... name ...)))
> (let* ((--cl-rest-- ...) (1loc ...) (file-alist ...)) (cond (... ...)
> (1loc ... ...) (... ...) (t ...)))
> (progn (let* (... ... ...) (cond ... ... ... ...)))
> (destructuring-bind (1loc file-alist) (slime-analyze-xrefs xrefs) (cond
> (... ...) (1loc ... ...) (... ...) (t ...)))
> slime-edit-definition-cont((("(DEFGENERIC PLOT-GRAPHS (TRACKER-GRAPH
> ROOT-DIR))" (:location ... ... ...)) ("(DEFMETHOD PLOT-GRAPHS
> TRACKER-GRAPH T)" (:location ... ... ...))) "plot-graphs" nil)
> (or (run-hook-with-args-until-success (quote slime-edit-definition-hooks)
> name where) (slime-edit-definition-cont (slime-find-definitions name) name
> where))
> slime-edit-definition("plot-graphs")
> call-interactively(slime-edit-definition)
>
> The only thing that has changed on my side is slime, which I have been
> updating from CVS. My emacs is 22.2-r2 (gentoo ebuild).
>
> Carlos Konstanski
I should add that this only happens when the symbol is a method name. Normal
functions are found just fine.
Carlos Konstanski
More information about the slime-devel
mailing list