branch: externals/sly commit c74ef16d5e44845febd44cbe292dadd22905ef87 Author: Chris Schafmeister <meis...@temple.edu> Commit: João Távora <joaotav...@gmail.com>
Improve source locations for inlined code in clasp If no source location information is available an error message will be displayed in the minibuffer. * slynk/backend/clasp.lisp (frame-source-location): Rework. Cherry-picked-from: SLIME commit 85ffb2308d076cccddac8886f2e2029aa722487e Co-authored-by: Manfred Bergmann <manf...@nnamgreb.de> Co-authored-by: João Távora <joaotav...@gmail.com> --- slynk/backend/clasp.lisp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/slynk/backend/clasp.lisp b/slynk/backend/clasp.lisp index 4a330af..8bfee5e 100644 --- a/slynk/backend/clasp.lisp +++ b/slynk/backend/clasp.lisp @@ -515,9 +515,11 @@ (code-source-location (ext::code-source-position address))) (format t "code-source-location ~s~%" code-source-location) ;; (core::source-info-backtrace *backtrace*) - (make-location (list :file (namestring (ext::code-source-line-source-pathname code-source-location))) - (list :line (ext::code-source-line-line-number code-source-location)) - '(:align t)))) + (if (ext::code-source-line-source-pathname code-source-location) + (make-location (list :file (namestring (ext::code-source-line-source-pathname code-source-location))) + (list :line (ext::code-source-line-line-number code-source-location)) + '(:align t)) + `(:error ,(format nil "No source for frame: ~a" frame-number))))) #+clasp-working (defimplementation frame-catch-tags (frame-number)