Minor bug in edit-callers under lispworks;

Alain Picard <[email protected]>
Newsgroups gmane.lisp.ilisp.devel
Message-ID <[email protected]>
Dear Maintainers,

Please replace the function ilisp-source-files with the 
definition below in lispworks.lisp v 1.9 (checked out yesterday)
with the following.

The original doesn't appear to handle #P"/foo/bar" pathname syntax,
hence the addition of the NAMESTRING around the pathname.
If it _is_ supposed to handle the #P notation, then I think
there is a bug in LISP-READ-CL-SYNTAX, as I get

(lisp-read-cl-syntax "#P\"/tmp/foo.bar\"")
==>
(\#P "/tmp/foo.bar")
On which ilisp later barfs mightily.

It might be preferable to fix lisp-read-cl-syntax instead
of ilisp-source-files, but I don't understand the specification
of that function well enough to do that (or to rewrite it).

I have a weird déja-vu of having fixed exact same bug sometimes last
year.  Weird.

Thanks.

(defun ilisp-source-files (symbol package type)
  "Print each file for PACKAGE:SYMBOL's TYPE definition on a line.
Returns T if successful."
  ;; A function to limit the search with type?
  (ilisp-errors
   (let ((symbol (ilisp-find-symbol symbol package))
	 (processed-pathnames ())
	 (types (ilisp->lispworks-types type)))
     (flet ((process-symbol (symbol)
	      (loop for (ignore pathname) in (dspec:find-name-locations types symbol)
		    when (and (pathnamep pathname)
			      (not (member pathname processed-pathnames :test #'equal)))
		    do (print (namestring (truename pathname)))
		    (push pathname processed-pathnames))))
       (process-symbol symbol)

       ;; Process setf
       (when (or (string-equal type "any")
		 (string-equal type "setf"))
	 (process-symbol (system:underlying-setf-name (list 'setf symbol)))))
     (if processed-pathnames
	 t
	 nil))))--
			Alain Picard
			Memetrics


-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.