summaryrefslogtreecommitdiff
path: root/module/system/repl
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2016-01-30 17:47:03 +0100
committerAndy Wingo <wingo@pobox.com>2016-01-31 10:45:02 +0100
commit67e8aa85e81af1644eb75893c173a697ae3d687f (patch)
treeec12aed7ce787d976cd09b245fba58d664734322 /module/system/repl
parentffc9bc9149d7c99940e1fe4537d3235846802380 (diff)
downloadguile-67e8aa85e81af1644eb75893c173a697ae3d687f.tar.gz
Remove frame-local-ref, frame-local-set!
* libguile/frames.h (scm_frame_num_locals, scm_frame_local_ref) (scm_frame_local_set_x): Remove. As long as we are changing the interface in a backward-incompatible way, we might as well remove these. * libguile/frames.c (scm_frame_num_locals, scm_frame_local_ref) (scm_frame_local_set_x, scm_init_frames_builtins, scm_init_frames): Arrange to make frame-local-ref et al private to frames.scm. * module/system/vm/frame.scm: Load scm_init_frames_builtins extensions. (frame-instruction-pointer-or-primitive-procedure-name): New public function. (frame-binding-ref, frame-binding-set!): Allow binding objects as vars. * module/system/repl/debug.scm (print-locals): Pass binding directly to frame-binding-ref. * module/statprof.scm (sample-stack-procs, count-call): Use new frame-instruction-pointer-or-primitive-procedure-name function.
Diffstat (limited to 'module/system/repl')
-rw-r--r--module/system/repl/debug.scm3
1 files changed, 1 insertions, 2 deletions
diff --git a/module/system/repl/debug.scm b/module/system/repl/debug.scm
index 18ac10f5b..4bd9e2758 100644
--- a/module/system/repl/debug.scm
+++ b/module/system/repl/debug.scm
@@ -115,8 +115,7 @@
(format port "~aLocal variables:~%" per-line-prefix)
(for-each
(lambda (binding)
- (let ((v (frame-local-ref frame (binding-slot binding)
- (binding-representation binding))))
+ (let ((v (frame-binding-ref frame binding)))
(display per-line-prefix port)
(run-hook before-print-hook v)
(format port "~a = ~v:@y\n" (binding-name binding) width v)))