diff options
author | Andy Wingo <wingo@pobox.com> | 2009-12-03 17:05:14 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2009-12-03 17:05:14 +0100 |
commit | 31d845b4bc4bf50f32492c17dc43c9ccea779acb (patch) | |
tree | 1c7ce1e4bba02e5dfb1934313eb36fbd8c422ca6 /libguile/vm.c | |
parent | bf5a05f2a01fee23f5622d1429dc32f4850f98b5 (diff) | |
download | guile-31d845b4bc4bf50f32492c17dc43c9ccea779acb.tar.gz |
remove asubrs
* libguile/tags.h (scm_tcs_subrs, scm_tc7_asubr): Remove definitions.
* libguile/goops.c (scm_class_of)
* libguile/procprop.c (scm_i_procedure_arity)
* libguile/procs.c (scm_thunk_p)
* libguile/vm.c (apply_foreign): Remove cases for asubrs.
* libguile/array-map.c: Gut all of the optimizations, because there are
no more asubrs, soon won't be rpsubrs, and all of this should happen
on the Scheme level, ideally.
Diffstat (limited to 'libguile/vm.c')
-rw-r--r-- | libguile/vm.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/libguile/vm.c b/libguile/vm.c index fdfae0082..689359e18 100644 --- a/libguile/vm.c +++ b/libguile/vm.c @@ -280,16 +280,6 @@ apply_foreign (SCM proc, SCM *args, int nargs, int headroom) case scm_tc7_cxr: if (nargs != 1) scm_wrong_num_args (proc); return scm_i_chase_pairs (args[0], (scm_t_bits) SCM_SUBRF (proc)); - case scm_tc7_asubr: - if (nargs < 2) - return SCM_SUBRF (proc) (args[0], SCM_UNDEFINED); - { - SCM x = args[0]; - int idx = 1; - while (nargs-- > 1) - x = SCM_SUBRF (proc) (x, args[idx++]); - return x; - } case scm_tc7_rpsubr: { int idx = 0; |