diff options
author | Andy Wingo <wingo@pobox.com> | 2010-06-19 13:43:33 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2010-06-19 13:43:33 +0200 |
commit | ec16eb7847895247be3438c25d2d27ce2e137b83 (patch) | |
tree | f63db2c446063ff7e481d7b374a5c1b61582d3c4 /module/ice-9/save-stack.scm | |
parent | a0d57eedfa135ae25bdb94274169aac362408bb9 (diff) | |
download | guile-ec16eb7847895247be3438c25d2d27ce2e137b83.tar.gz |
deprecate the-last-stack
* libguile/backtrace.h (scm_the_last_stack_fluid_var)
* libguile/backtrace.c (scm_init_backtrace): No more
scm_the_last_stack_fluid_var. The replacement is to resolve
`the-last-stack' in (ice-9 stack-catch).
(scm_backtrace_with_highlights): Accordingly, instead of backtracing
the last stack, backtrace the current stack.
* libguile/throw.h:
* libguile/throw.c:
* libguile/deprecated.h:
* libguile/deprecated.c (scm_internal_stack_catch): Deprecate this
function.
* module/ice-9/save-stack.scm (the-last-stack): Move here from boot-9.
* module/ice-9/debug.scm:
* module/ice-9/debugger.scm: Use (ice-9 save-stack) for the-last-stack.
* module/ice-9/deprecated.scm (the-last-stack): Add deprecated shim.
Diffstat (limited to 'module/ice-9/save-stack.scm')
-rw-r--r-- | module/ice-9/save-stack.scm | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/module/ice-9/save-stack.scm b/module/ice-9/save-stack.scm index 31eb8215e..126ed837e 100644 --- a/module/ice-9/save-stack.scm +++ b/module/ice-9/save-stack.scm @@ -32,11 +32,14 @@ (define-module (ice-9 save-stack) ;; Replace deprecated root-module bindings, if present. #:replace (stack-saved? + the-last-stack save-stack)) ;; FIXME: stack-saved? is broken in the presence of threads. (define stack-saved? #f) +(define the-last-stack (make-fluid)) + (define (save-stack . narrowing) (if (not stack-saved?) (begin |