another fix for `vector-{ref,set!}' on chaperone/impersonator
--- fixes a81917a2692; drop this commit if that one is dropped
This commit is contained in:
parent
ca2dd17dcb
commit
1daa2649f0
|
@ -636,7 +636,14 @@
|
|||
(test-setter make-bytes 0 7 'bytes-set! bytes-set! bytes-ref #f)
|
||||
(test-setter make-string #\a #\7 'string-set! string-set! string-ref #f)
|
||||
(test-setter make-flvector 1.0 7.0 'flvector-set! flvector-set! flvector-ref #f)
|
||||
(test-setter make-fxvector 1 7 'fxvector-set! fxvector-set! fxvector-ref #f))
|
||||
(test-setter make-fxvector 1 7 'fxvector-set! fxvector-set! fxvector-ref #f)
|
||||
|
||||
(let ([chap-vec (lambda (vec)
|
||||
(chaperone-vector vec (lambda (vec i val) val) (lambda (vec i val) val)))])
|
||||
(test-setter (lambda (n v) (chap-vec (make-vector n v)))
|
||||
#f 7 'vector-set! vector-set! vector-ref #t)
|
||||
(test-setter (lambda (n v) (chap-vec (chap-vec (make-vector n v))))
|
||||
#f 7 'vector-set! vector-set! vector-ref #t)))
|
||||
|
||||
(err/rt-test (apply (list-ref (list (lambda (v) (vector-set! v 0 #t))) (random 1))
|
||||
(list (vector-immutable 1 2 3))))
|
||||
|
|
|
@ -1121,8 +1121,6 @@ static int common3(mz_jit_state *jitter, void *_data)
|
|||
}
|
||||
CHECK_LIMIT();
|
||||
/* Might return, if arg was chaperone */
|
||||
if (ii == -1)
|
||||
jit_addi_p(JIT_RUNSTACK, JIT_RUNSTACK, WORDS_TO_BYTES(2));
|
||||
jit_addi_p(JIT_RUNSTACK, JIT_RUNSTACK, WORDS_TO_BYTES(2));
|
||||
JIT_UPDATE_THREAD_RSPTR();
|
||||
if (!iii)
|
||||
|
|
Loading…
Reference in New Issue
Block a user