mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-10 14:00:21 +02:00
fix source location reporting for compiled code
* module/system/repl/repl.scm (default-catch-handler): Cosmetic improvements on VM error backtraces. * module/system/vm/frame.scm (print-frame): Cosmetic improvements. (frame-line-number): source:line operates on the handle, not the cdr. (print-frame-chain-as-backtrace): Cosmetic improvements.
This commit is contained in:
parent
29711eb918
commit
fbea69ad42
2 changed files with 5 additions and 5 deletions
|
@ -61,9 +61,9 @@
|
|||
((quit . _)
|
||||
(apply throw args))
|
||||
((vm-error ,fun ,msg ,args)
|
||||
(display "VM error: ")
|
||||
(apply format #t msg args)
|
||||
(vm-backtrace (the-vm))
|
||||
(display "\nVM error: \n")
|
||||
(apply format #t msg args)
|
||||
(newline))
|
||||
((,key ,subr ,msg ,args . ,rest)
|
||||
(vm-backtrace (the-vm))
|
||||
|
|
|
@ -73,7 +73,7 @@
|
|||
|
||||
(define (frame-line-number frame)
|
||||
(let ((addr (frame-address frame)))
|
||||
(cond ((assv-ref (program-sources (frame-program frame)) addr)
|
||||
(cond ((assv addr (program-sources (frame-program frame)))
|
||||
=> source:line)
|
||||
(else (format #f "@~a" addr)))))
|
||||
|
||||
|
@ -85,7 +85,7 @@
|
|||
"current input"))))
|
||||
|
||||
(define (print-frame frame)
|
||||
(format #t "~4@a: ~a ~a\n" (frame-line-number frame) (frame-number frame)
|
||||
(format #t "~4@a: ~a ~a\n" (frame-line-number frame) (frame-number frame)
|
||||
(frame-call-representation frame)))
|
||||
|
||||
|
||||
|
@ -112,7 +112,7 @@
|
|||
(format #t "VM backtrace:\n")
|
||||
(fold (lambda (frame file)
|
||||
(let ((new-file (frame-file frame file)))
|
||||
(if (not (eqv? new-file file))
|
||||
(if (not (equal? new-file file))
|
||||
(format #t "In ~a:\n" new-file))
|
||||
(print-frame frame)
|
||||
new-file))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue