summaryrefslogtreecommitdiff
path: root/libguile/frames.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2009-12-29 14:09:50 +0100
committerAndy Wingo <wingo@pobox.com>2009-12-29 14:09:50 +0100
commit1c5e812258da4b002d309f969d722c86004ecf94 (patch)
treeff8783df35d78172dda8f86c0e52691f1497f63f /libguile/frames.c
parentb8596c08ac2ef2201c1e8559ac5f4d62ebde3d91 (diff)
downloadguile-1c5e812258da4b002d309f969d722c86004ecf94.tar.gz
clean up (system vm frames), add locals command to debugger
* libguile/frames.c (scm_init_frames): No need to bootstrap the VM here, it should be already bootstrapped by init.c. (scm_bootstrap_frames): No need to register an extension, as scm_init_frames is called by init.c. * module/system/vm/frame.scm: Don't load the scm_init_frames extension, as the primitives from frames.c are loaded by Guile's init. (frame-bindings): Change to return bindings, as can be accessed by the binding: accessors from program.scm. (frame-lookup-binding): Revive and make this one work with current code. (frame-binding-set!): (frame-binding-ref): Use the new frame-lookup-binding. Perhaps these should handle boxing and unboxing, though. (frame-source): New accessor, returns a source object. (frame-call-representation): Change to return a full list, as truncated-print can truncate for us. (frame-environment, frame-object-binding, frame-object-name): Update not to take an address, as the address is part of the frame. (frame-variable-exists?, frame-variable-ref, frame-variable-set!) (frame-local-variables, frame-program-name, print-frame) (print-frame-chain-as-backtrace, frame-file, frame-line-number) (make-frame-chain, bootstrap-frame?, frame-number, frame-address): Remove these outdated functions. * module/system/vm/debug.scm (debugger-repl): Use frame-call-representation, and ~@y. (locals): New command, prints local variables in a frame.
Diffstat (limited to 'libguile/frames.c')
-rw-r--r--libguile/frames.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/libguile/frames.c b/libguile/frames.c
index 5c61eb088..5d390ab60 100644
--- a/libguile/frames.c
+++ b/libguile/frames.c
@@ -304,15 +304,11 @@ scm_bootstrap_frames (void)
{
scm_tc16_frame = scm_make_smob_type ("frame", 0);
scm_set_smob_print (scm_tc16_frame, frame_print);
- scm_c_register_extension ("libguile", "scm_init_frames",
- (scm_t_extension_init_func)scm_init_frames, NULL);
}
void
scm_init_frames (void)
{
- scm_bootstrap_vm ();
-
#ifndef SCM_MAGIC_SNARFER
#include "libguile/frames.x"
#endif