summaryrefslogtreecommitdiff
path: root/module
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2017-02-22 22:20:07 +0100
committerAndy Wingo <wingo@pobox.com>2017-02-22 22:22:27 +0100
commit4dcc97288dc2c43ea9f2e61fdb1357cec3936fc9 (patch)
tree69c9c78f6d6a3acd0fbb73c04269b46f0eb27a79 /module
parent5333642b71a35d1a181a9cf008caefe77b44b2a0 (diff)
Fix compute-frame-sizes for case-lambda jumps
* module/system/vm/frame.scm (compute-frame-sizes): Fix for jumps to the next arity.
Diffstat (limited to 'module')
-rw-r--r--module/system/vm/frame.scm3
1 files changed, 3 insertions, 0 deletions
diff --git a/module/system/vm/frame.scm b/module/system/vm/frame.scm
index c9090ef36..b699590f6 100644
--- a/module/system/vm/frame.scm
+++ b/module/system/vm/frame.scm
@@ -103,6 +103,9 @@
(define (find-idx n diff)
(let lp ((n n) (diff diff))
(cond
+ ((= n (vector-length parsed))
+ ;; Possible for jumps to alternate arities.
+ #f)
((negative? diff)
(lp (1- n) (+ diff (vector-ref parsed (1- n)))))
((positive? diff)