aboutsummaryrefslogtreecommitdiffstats
path: root/ramap.c
diff options
context:
space:
mode:
authorDavid N. Welton <davidw@efn.org>1998-12-11 20:21:49 -0800
committerBryan Newbold <bnewbold@robocracy.org>2017-02-20 00:05:25 -0800
commita47af30d2f0e96afcd1f14b1984575c359faa3d6 (patch)
tree2ed08ce2d757f917de7c3c7c04fd7e309f454c83 /ramap.c
parentf64b2806c1d66a1341bb8b1491f384169ab1d65f (diff)
parentdb04688faa20f3576257c0fe41752ec435beab9a (diff)
downloadscm-a47af30d2f0e96afcd1f14b1984575c359faa3d6.tar.gz
scm-a47af30d2f0e96afcd1f14b1984575c359faa3d6.zip
Import Debian changes 5c3-5debian/5c3-5
scm (5c3-5) frozen unstable; urgency=low * debian/rules chmod +x's bld.scm. Fixes #30521. scm (5c3-4) frozen unstable; urgency=low * Made bld.scm executable. Fixes #29578. scm (5c3-3) frozen unstable; urgency=low * -nw * Fixes #16762. * Fixes #18163. * Fixes #18164. * Fixes #23743. * Fixes #24098. * Fixes #24099. * Fixes #24547. scm (5c3-2) frozen unstable; urgency=low * Re-uploading for slink freeze. scm (5c3-1) unstable; urgency=low * New upstream version.
Diffstat (limited to 'ramap.c')
-rw-r--r--ramap.c33
1 files changed, 21 insertions, 12 deletions
diff --git a/ramap.c b/ramap.c
index 25a1df9..d00e400 100644
--- a/ramap.c
+++ b/ramap.c
@@ -538,6 +538,9 @@ SCM sc2array(s, ra, prot)
switch TYP7(ARRAY_V(res)) {
case tc7_vector:
break;
+ case tc7_bvect:
+ if (BOOL_T==s || BOOL_F==s) break;
+ goto mismatch;
case tc7_string:
if ICHRP(s) break;
goto mismatch;
@@ -1375,11 +1378,14 @@ SCM array_map(ra0, proc, lra)
ramapc(ramap_a, proc, ra0, lra, s_array_map);
}
return UNSPECIFIED;
-#ifdef CCLO
- case tc7_cclo:
- lra = cons(sc2array(proc,ra0,EOL), lra);
- proc = CCLO_SUBR(proc);
- goto tail;
+#if 1 /* def CCLO */
+ case tc7_specfun:
+ if (tc16_cclo==TYP16(proc)) {
+ lra = cons(sc2array(proc,ra0,EOL), lra);
+ proc = CCLO_SUBR(proc);
+ goto tail;
+ }
+ goto gencase;
#endif
}
}
@@ -1425,15 +1431,18 @@ SCM array_for_each(proc, ra0, lra)
ASSERT(BOOL_T==procedurep(proc), proc, ARG1, s_array_for_each);
tail:
switch TYP7(proc) {
- default:
+ default: gencase:
ramapc(rafe, proc, ra0, lra, s_array_for_each);
return UNSPECIFIED;
-#ifdef CCLO
- case tc7_cclo:
- lra = cons(ra0, lra);
- ra0 = sc2array(proc, ra0, EOL);
- proc = CCLO_SUBR(proc);
- goto tail;
+#if 1 /* def CCLO */
+ case tc7_specfun:
+ if (tc16_cclo==TYP16(proc)) {
+ lra = cons(ra0, lra);
+ ra0 = sc2array(proc, ra0, EOL);
+ proc = CCLO_SUBR(proc);
+ goto tail;
+ }
+ goto gencase;
#endif
}
}