[Ecls-list] Slime & ECL

Alexander Gavrilov angavrilov at gmail.com
Tue Sep 28 08:49:50 UTC 2010


Hi,

I've noticed that the slime debugger crashes when attempting
to display the variables for some bytecode compiled function.
This happens because bytecode closures for local flets appear
in the variable binding list. I have patched it in my local
copy of slime, but it would be nice if a permanent fix could
be developed:

@@ -440,11 +440,11 @@
 (defun frame-decode-env (frame)
   (let ((functions '())
         (blocks '())
         (variables '()))
     (setf frame (si::decode-ihs-env (second frame)))
-    (dolist (record frame)
+    (dolist (record (remove-if-not #'consp frame))
       (let* ((record0 (car record))
 	     (record1 (cdr record)))
 	(cond ((or (symbolp record0) (stringp record0))
 	       (setq variables (acons record0 record1 variables)))
 	      ((not (si::fixnump record0))

Alexander




More information about the ecl-devel mailing list