[slime-devel] slime-rgrep-system leads to invalid packet

Tamas Papp tkpapp at gmail.com
Fri Feb 1 15:21:31 UTC 2013


On Fri, Feb 01 2013, Stas Boukarev <stassats at gmail.com> wrote:

> Tamas Papp <tkpapp at gmail.com> writes:
>
>> Hi,
>>
>> I am using the latest slime (from cvs), sbcl 1.1.4 (but the same thing
>> happens with 1.1.3), GNU Emacs 24.2.1 (x86_64-pc-linux-gnu, GTK+ Version
>> 3.4.2) of 2013-01-20 on trouble, modified by Debian.
>>
>> When I call slime-rgrep-system, I get an error message that looks like this:
> Fixed, thanks.

Hi, thanks for the quick fix.

slime-rgrep-system (& ilk) have a related bug: when _first_ called, from
a buffer that is not a lisp source file in an asdf system, it gives the
following backtrace:

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  expand-file-name(nil)
  (funcall (if (slime-connected-p) (first (slime-find-filename-translators (slime-machine-instance))) (quote identity)) (expand-file-name filename))
  slime-tramp-to-lisp-filename(nil)
  funcall(slime-tramp-to-lisp-filename nil)
  slime-to-lisp-filename(nil)
  (list (quote swank:asdf-determine-system) (slime-to-lisp-filename filename) buffer-package)
  (\` (swank:asdf-determine-system (\, (slime-to-lisp-filename filename)) (\, buffer-package)))
  (slime-eval (\` (swank:asdf-determine-system (\, (slime-to-lisp-filename filename)) (\, buffer-package))))
  slime-determine-asdf-system(nil "COMMON-LISP-USER")
  (if determine-default-accurately (slime-determine-asdf-system (buffer-file-name) (slime-current-package)) (slime-find-asd-file (or default-directory (buffer-file-name)) system-names))
  (or default-value (if determine-default-accurately (slime-determine-asdf-system (buffer-file-name) (slime-current-package)) (slime-find-asd-file (or default-directory (buffer-file-name)) system-names)))
  (let* ((completion-ignore-case nil) (prompt (or prompt "System")) (system-names (slime-eval (\` (swank:list-asdf-systems)))) (default-value (or default-value (if determine-default-accurately (slime-determine-asdf-system (buffer-file-name) (slime-current-package)) (slime-find-asd-file (or default-directory (buffer-file-name)) system-names)))) (prompt (concat prompt (if default-value (format " (default `%s'): " default-value) ": ")))) (completing-read prompt (slime-bogus-completion-alist system-names) nil nil nil (quote slime-system-history) default-value))
  slime-read-system-name(nil nil t)
  (list (slime-read-system-name nil nil t) (grep-read-regexp))
  (progn (grep-compute-defaults) (list (slime-read-system-name nil nil t) (grep-read-regexp)))
  call-interactively(slime-rgrep-system t nil)
  execute-extended-command(nil)
  call-interactively(execute-extended-command nil nil)

However, once I call it from a lisp source code buffer, then
subsequently it works fine, from any other buffer.

Best,

Tamas




More information about the slime-devel mailing list