summaryrefslogtreecommitdiff
path: root/libguile/objects.c
diff options
context:
space:
mode:
authorDirk Herrmann <dirk@dirk-herrmanns-seiten.de>2003-06-01 13:58:42 +0000
committerDirk Herrmann <dirk@dirk-herrmanns-seiten.de>2003-06-01 13:58:42 +0000
commit14b18ed6f596c22e62f0b2afecb5cfd4401acee4 (patch)
treeb484088ff620de6b447fceeee24fe5237f082be3 /libguile/objects.c
parente757438dc92056a426fbbea99d2b52c8d13ccf01 (diff)
downloadguile-14b18ed6f596c22e62f0b2afecb5cfd4401acee4.tar.gz
This set of patches separates the representation of the cxr family
of functions (car, cdr etc.) from the dsubr family of functions (i. e. functions that take a double precision floating point argument). Further, the algorithm for handling the cxr function is improved. * eval.c (SCM_CEVAL, SCM_APPLY, scm_trampoline_1), numbers.c (scm_asinh, scm_acosh, scm_atanh, scm_truncate, scm_round, floor, ceil, sqrt, fabs, exp, log, sin, cos, tan, asin, acos, atan, sinh, cosh, tanh), objects.c (scm_class_of), procprop.c (scm_i_procedure_arity), ramap.c (scm_array_map_x), tags.h (scm_tc7_dsubr, scm_tcs_subrs): Introduce scm_tc7_dsubr as new typecode for the dsubr family of functions. * ramap.c (ramap_cxr, ramap_dsubr): Renamed ramap_cxr to ramap_dsubr. * eval.c (SCM_CEVAL, SCM_APPLY, call_cxr_1), pairs.c (scm_init_pairs): Make use of the (now usable) second cell element of a scm_tc7_cxr function to implement the cxr family of functions more efficiently.
Diffstat (limited to 'libguile/objects.c')
-rw-r--r--libguile/objects.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libguile/objects.c b/libguile/objects.c
index 171f06fae..0f4443cd8 100644
--- a/libguile/objects.c
+++ b/libguile/objects.c
@@ -112,6 +112,7 @@ SCM_DEFINE (scm_class_of, "class-of", 1, 0, 0,
case scm_tc7_asubr:
case scm_tc7_subr_0:
case scm_tc7_subr_1:
+ case scm_tc7_dsubr:
case scm_tc7_cxr:
case scm_tc7_subr_3:
case scm_tc7_subr_2: