diff options
author | Marius Vollmer <mvo@zagadka.de> | 2001-07-26 21:40:18 +0000 |
---|---|---|
committer | Marius Vollmer <mvo@zagadka.de> | 2001-07-26 21:40:18 +0000 |
commit | 904a077df1a670d386ca114ddb7a8e371684f655 (patch) | |
tree | 62ba0cc7b9226c16c662cf884cb2b6c440529df4 /libguile/debug.c | |
parent | 5b54c4daa124b0d9f9b984f0bf1733ac5ebba4d3 (diff) | |
download | guile-904a077df1a670d386ca114ddb7a8e371684f655.tar.gz |
* tags.h: Update tag system docs.
(scm_tc3_cons_gloc): Renamed to scm_tc3_struct. Changed all uses.
(scm_tcs_cons_gloc): Renamed to scm_tcs_struct. Changed all uses.
(SCM_ECONSP, SCM_NECONSP): Removed. Changed all uses to SCM_CONSP
or SCM_NCONSP, respectively.
* struct.c, struct.h, srcprop.c, procs.c, procprop.c, print.c,
objects.c. modules.c, goops.c, eval.c, debug.c: Changed all uses
of scm_tc3_cond_gloc and scm_tcs_cons_gloc. See above.
* print.c (scm_iprin1): Remove printing of glocs. Do not try to
tell glocs from structs.
* gc.c (scm_gc_mark, scm_gc_sweep): Remove handling of glocs.
* eval.c (scm_m_atbind): Make a list of variables, not glocs.
(scm_ceval, scm_deval): For SCM_IM_BIND, fiddle with variables
instead of with glocs.
(EVALCAR): Do not test for glocs.
(scm_lookupcar, scm_lookupcar1): Do not handle glocs in race
condition.
(scm_unmemocar): Do not handle glocs.
(scm_m_atfop): Memoize as a variable, not as a gloc.
(scm_eval_args, scm_deval_args): Do not handle glocs.
(scm_ceval, scm_deval): Likewise.
* eval.h (SCM_XEVALCAR): Do not test for glocs.
(SCM_GLOC_VAR, SCM_GLOC_VAL, SCM_GLOC_SET_VAL, SCM_GLOC_VAL_LOC):
Removed.
* debug.h, debug.c (scm_make_gloc, scm_gloc_p): Removed.
* dynwind.c (scm_swap_bindings): Likewise.
(scm_dowinds): Updated to recognize lists of variables instead of
lists of glocs.
* __scm.h (SCM_CAUTIOS, SCM_RECKLESS): Update comments.
Diffstat (limited to 'libguile/debug.c')
-rw-r--r-- | libguile/debug.c | 41 |
1 files changed, 2 insertions, 39 deletions
diff --git a/libguile/debug.c b/libguile/debug.c index 49cce42c7..d4a97e260 100644 --- a/libguile/debug.c +++ b/libguile/debug.c @@ -196,17 +196,6 @@ scm_make_memoized (SCM exp, SCM env) * specified, the top-level environment of the current module will * be assumed. All environments must match. * - * - procedure: make-gloc VARIABLE [ENV] - * - * Return a gloc, encapsulated in a memoized object. - * - * (Glocs can't exist in normal list structures, since they will - * be mistaken for structs.) - * - * - procedure: gloc? OBJECT - * - * Return #t if OBJECT is a memoized gloc. - * * - procedure: make-iloc FRAME BINDING CDRP * * Return an iloc referring to frame no. FRAME, binding @@ -252,32 +241,6 @@ scm_make_memoized (SCM exp, SCM env) #include "libguile/variable.h" #include "libguile/procs.h" -SCM_DEFINE (scm_make_gloc, "make-gloc", 1, 1, 0, - (SCM var, SCM env), - "Create a gloc for variable @var{var} in the environment\n" - "@var{env}.") -#define FUNC_NAME s_scm_make_gloc -{ - SCM_VALIDATE_VARIABLE (1,var); - if (SCM_UNBNDP (env)) - env = scm_top_level_env (SCM_TOP_LEVEL_LOOKUP_CLOSURE); - else - SCM_VALIDATE_NULLORCONS (2,env); - return scm_make_memoized (SCM_PACK (SCM_UNPACK (var) + scm_tc3_cons_gloc), env); -} -#undef FUNC_NAME - -SCM_DEFINE (scm_gloc_p, "gloc?", 1, 0, 0, - (SCM obj), - "Return @code{#t} if @var{obj} is a gloc.") -#define FUNC_NAME s_scm_gloc_p -{ - return - SCM_BOOL (SCM_MEMOIZEDP (obj) - && ((SCM_UNPACK(SCM_MEMOIZED_EXP(obj))&7) == scm_tc3_cons_gloc)); -} -#undef FUNC_NAME - SCM_DEFINE (scm_make_iloc, "make-iloc", 3, 0, 0, (SCM frame, SCM binding, SCM cdrp), "Return a new iloc with frame offset @var{frame}, binding\n" @@ -538,8 +501,8 @@ scm_m_start_stack (SCM exp, SCM env) #define FUNC_NAME s_start_stack { exp = SCM_CDR (exp); - if (!SCM_ECONSP (exp) - || !SCM_ECONSP (SCM_CDR (exp)) + if (!SCM_CONSP (exp) + || !SCM_CONSP (SCM_CDR (exp)) || !SCM_NULLP (SCM_CDDR (exp))) SCM_WRONG_NUM_ARGS (); return scm_start_stack (scm_eval_car (exp, env), SCM_CADR (exp), env); |