[slime-cvs] CVS update: slime/swank-cmucl.lisp

Helmut Eller heller at common-lisp.net
Fri Oct 1 12:05:08 UTC 2004


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

Modified Files:
	swank-cmucl.lisp 
Log Message:
(code-component-entry-points): Only include entry points with "valid"
functions names.  This excludes internal lambdas, which have usually
have usually a string as name, like "defun foo".
Date: Fri Oct  1 14:05:08 2004
Author: heller

Index: slime/swank-cmucl.lisp
diff -u slime/swank-cmucl.lisp:1.121 slime/swank-cmucl.lisp:1.122
--- slime/swank-cmucl.lisp:1.121	Thu Sep 23 23:33:51 2004
+++ slime/swank-cmucl.lisp	Fri Oct  1 14:05:08 2004
@@ -565,13 +565,13 @@
 (defun code-component-entry-points (code)
   "Return a list ((NAME LOCATION) ...) of function definitons for
 the code omponent CODE."
-  (delete-duplicates
-   (loop for e = (kernel:%code-entry-points code)
-         then (kernel::%function-next e)
-         while e
-         collect (list (kernel:%function-name e)
-                       (function-location e)))
-   :test #'equal))
+  (let ((names '()))
+    (do ((f (kernel:%code-entry-points code) (kernel::%function-next f)))
+        ((not f))
+      (let ((name (kernel:%function-name f)))
+        (when (ext:valid-function-name-p name)
+          (push (list name (function-location f)) names))))
+    names))
 
 (defimplementation list-callers (symbol)
   "Return a list ((NAME LOCATION) ...) of callers."





More information about the slime-cvs mailing list