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

Helmut Eller heller at common-lisp.net
Tue Feb 22 06:27:18 UTC 2005


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

Modified Files:
	swank-allegro.lisp 
Log Message:
(restart-frame): Simplify it a little.

(toggle-trace-generic-function-methods): Minor reformatting.
Date: Tue Feb 22 07:27:17 2005
Author: heller

Index: slime/swank-allegro.lisp
diff -u slime/swank-allegro.lisp:1.68 slime/swank-allegro.lisp:1.69
--- slime/swank-allegro.lisp:1.68	Fri Feb 18 17:03:35 2005
+++ slime/swank-allegro.lisp	Tue Feb 22 07:27:17 2005
@@ -204,9 +204,10 @@
 
 (defimplementation restart-frame (frame-number)
   (let ((frame (nth-frame frame-number)))
-    (apply #'debugger:frame-retry
-           (append (list frame (debugger:frame-function frame))
-                   (cdr (debugger:frame-expression frame))))))
+    (cond ((debugger:frame-retryable-p frame)
+           (apply #'debugger:frame-retry frame (debugger:frame-function frame)
+                  (cdr (debugger:frame-expression frame))))
+          (t "Frame is not retryable"))))
 
 ;;;; Compiler hooks
 
@@ -664,7 +665,7 @@
 (defimplementation quit-lisp ()
   (excl:exit 0 :quiet t))
 
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
 ;;Trace implementations
 ;;In Allegro 7.0, we have:
 ;; (trace <name>)
@@ -673,6 +674,7 @@
 ;; (trace ((labels (method <name> (<specializer>+)) <label-name>)))
 ;; <name> can be a normal name or a (setf name)
 
+#-allegro-v5.0
 (defimplementation toggle-trace-generic-function-methods (name)
   (let ((methods (mop:generic-function-methods (fdefinition name))))
     (cond ((member name (eval '(trace)) :test #'equal)
@@ -698,8 +700,10 @@
          (ecase (first fspec)
            ((:defun :defgeneric) (second fspec))
            ((:defmethod) `(method ,@(rest fspec)))
-           ((:labels) `(labels ,(process-fspec-for-allegro (second fspec)) ,(third fspec)))
-           ((:flet) `(flet ,(process-fspec-for-allegro (second fspec)) ,(third fspec)))))
+           ((:labels) `(labels ,(process-fspec-for-allegro (second fspec))
+                         ,(third fspec)))
+           ((:flet) `(flet ,(process-fspec-for-allegro (second fspec)) 
+                       ,(third fspec)))))
         (t
          fspec)))
 




More information about the slime-cvs mailing list