summaryrefslogtreecommitdiff
path: root/libguile/objects.c
diff options
context:
space:
mode:
authorMikael Djurfeldt <djurfeldt@nada.kth.se>2000-11-07 02:18:11 +0000
committerMikael Djurfeldt <djurfeldt@nada.kth.se>2000-11-07 02:18:11 +0000
commit4ea6a43186c41e3946c9c0710a8ad4d9bbcd24f5 (patch)
tree7a921912cf8c0f3abe2912ebff8d49e707c4a4f4 /libguile/objects.c
parent55c4a1324010fe863ffda9c827d434b4da5c074c (diff)
downloadguile-4ea6a43186c41e3946c9c0710a8ad4d9bbcd24f5.tar.gz
* eval.c (SCM_IM_DISPATCH), objects.c (scm_mcache_lookup_cmethod):
Count n_specialized + 1 turns before letting a match through.
Diffstat (limited to 'libguile/objects.c')
-rw-r--r--libguile/objects.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/objects.c b/libguile/objects.c
index 68836dea5..5fe685349 100644
--- a/libguile/objects.c
+++ b/libguile/objects.c
@@ -276,7 +276,7 @@ scm_mcache_lookup_cmethod (SCM cache, SCM args)
[scm_si_hashsets + hashset];
ls = SCM_CDR (ls);
}
- while (--j && SCM_NIMP (ls));
+ while (j-- && SCM_NIMP (ls));
i &= mask;
end = i;
}
@@ -296,7 +296,7 @@ scm_mcache_lookup_cmethod (SCM cache, SCM args)
ls = SCM_CDR (ls);
z = SCM_CDR (z);
}
- while (--j && SCM_NIMP (ls));
+ while (j-- && SCM_NIMP (ls));
/* Fewer arguments than specifiers => CAR != ENV */
if (!(SCM_IMP (SCM_CAR (z)) || SCM_CONSP (SCM_CAR (z))))
goto next_method;