[slime-cvs] CVS update: slime/swank-allegro.lisp
Luke Gorrie
lgorrie at common-lisp.net
Fri Jun 18 19:27:37 UTC 2004
Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv28603
Modified Files:
swank-allegro.lisp
Log Message:
>From Matthew Danish:
Implemented frame-source-location-for-emacs.
Date: Fri Jun 18 12:27:37 2004
Author: lgorrie
Index: slime/swank-allegro.lisp
diff -u slime/swank-allegro.lisp:1.36 slime/swank-allegro.lisp:1.37
--- slime/swank-allegro.lisp:1.36 Wed Jun 16 15:03:55 2004
+++ slime/swank-allegro.lisp Fri Jun 18 12:27:37 2004
@@ -155,8 +155,10 @@
(disassemble (debugger:frame-function (nth-frame index))))
(defimplementation frame-source-location-for-emacs (index)
- (list :error (format nil "Cannot find source for frame: ~A"
- (nth-frame index))))
+ (let* ((frame (nth-frame index))
+ (expr (debugger:frame-expression frame))
+ (fspec (first expr)))
+ (second (first (fspec-definition-locations fspec)))))
(defimplementation eval-in-frame (form frame-number)
(debugger:eval-form-in-context
@@ -242,7 +244,7 @@
((member :top-level)
(list :error (format nil "Defined at toplevel: ~A" fspec)))
(null
- (list :error (format nil "Unkown source location for ~A" fspec))))))
+ (list :error (format nil "Unknown source location for ~A" fspec))))))
(defun fspec-definition-locations (fspec)
(let ((defs (excl::find-multiple-definitions fspec)))
More information about the slime-cvs
mailing list