[slime-cvs] CVS update: slime/swank-source-path-parser.lisp

Helmut Eller heller at common-lisp.net
Sat Oct 30 10:16:31 UTC 2004


Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv6196

Modified Files:
	swank-source-path-parser.lisp 
Log Message:
(source-path-stream-position): Bind *read-suppress* only as long as we
skip over forms.  The last toplevel form in the path is read with
*read-suppress* = nil because in newer versions of CMUCL and SBCL read
will return nil if *read-suppress* is t.


Date: Sat Oct 30 12:16:30 2004
Author: heller

Index: slime/swank-source-path-parser.lisp
diff -u slime/swank-source-path-parser.lisp:1.8 slime/swank-source-path-parser.lisp:1.9
--- slime/swank-source-path-parser.lisp:1.8	Tue Oct 26 02:33:13 2004
+++ slime/swank-source-path-parser.lisp	Sat Oct 30 12:16:29 2004
@@ -63,17 +63,17 @@
 Return the object together with a hashtable that maps
 subexpressions of the object to stream positions."
   (let* ((*source-map* (make-hash-table :test #'eq))
-         (*readtable* (make-source-recording-readtable *readtable* *source-map*)))
+         (*readtable* (make-source-recording-readtable *readtable* 
+						       *source-map*)))
     (values (read stream) *source-map*)))
 
 (defun source-path-stream-position (path stream)
   "Search the source-path PATH in STREAM and return its position."
   (destructuring-bind (tlf-number . path) path
     (let ((*read-suppress* t))
-      (dotimes (i tlf-number) (read stream))
-      (multiple-value-bind (form source-map)
-	  (read-and-record-source-map stream)
-	(source-path-source-position (cons 0 path) form source-map)))))
+      (dotimes (i tlf-number) (read stream)))
+    (multiple-value-bind (form source-map) (read-and-record-source-map stream)
+      (source-path-source-position (cons 0 path) form source-map))))
 
 (defun source-path-string-position (path string)
   (with-input-from-string (s string)





More information about the slime-cvs mailing list