[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Backtraces in Guile 2.0
From: |
Andy Wingo |
Subject: |
Re: Backtraces in Guile 2.0 |
Date: |
Tue, 22 Feb 2011 09:20:25 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) |
Hi Mike,
On Tue 22 Feb 2011 04:23, Mike Gran <address@hidden> writes:
> (symbol->string "STRING")
>
> In module/ice-9/boot-9.scm:
> 1917: 3 [save-module-excursion #<procedure 14f3180 at
> module/ice-9/boot-9.scm:3341:3 ()>]
> 3348: 2 [#<procedure 14f3180 at module/ice-9/boot-9.scm:3341:3 ()>]
> In unknown file:
> ?: 1 [load-compiled/vm
> "/home/mike/.cache/guile/ccache/2.0-LE-8-2.0/home/mike/Documents/code/guile_backtrace/symbol1.scm.go"]
> ?: 0 [symbol->string "STRING"]
Here, there is no procedure in the call chain that has source
annotations corresponding to symbol1.scm. Though, it does seem to me
that the load-compiled/vm line is unnecessary; instead we should load up
the .go into a thunk, and run that thunk without recursing through the
load-compiled/vm primitive.
In any case it seems that symbol1.scm.go tail-calls symbol->string, so
we are left without source info. Bummer. We could improve this by
keeping a ring buffer of previous frames, like JRM suggests in
http://funcall.blogspot.com/2009/05/you-knew-id-say-something-part-iv.html.
Regards,
Andy
--
http://wingolog.org/