cs: fix prop:chaperone-unsafe-undefined
-triggered error
This commit is contained in:
parent
9b2431e670
commit
0602c7e21b
|
@ -1939,7 +1939,7 @@
|
||||||
(define q 1)
|
(define q 1)
|
||||||
(field [s 1])
|
(field [s 1])
|
||||||
(super-new)))
|
(super-new)))
|
||||||
|
|
||||||
(err/rt-test (new d%) (make-undefined-exn? 'z))
|
(err/rt-test (new d%) (make-undefined-exn? 'z))
|
||||||
(err/rt-test (new d!%) (make-undefined-exn? 'z))
|
(err/rt-test (new d!%) (make-undefined-exn? 'z))
|
||||||
(err/rt-test (new e%) (make-undefined-exn? 'z))
|
(err/rt-test (new e%) (make-undefined-exn? 'z))
|
||||||
|
|
|
@ -56,7 +56,8 @@
|
||||||
rtd)
|
rtd)
|
||||||
(let ([r (loop (impersonator-next v))])
|
(let ([r (loop (impersonator-next v))])
|
||||||
(when (eq? r unsafe-undefined)
|
(when (eq? r unsafe-undefined)
|
||||||
(raise-unsafe-undefined 'struct-ref "undefined" "use" acc (impersonator-val v) (cdr key)))
|
(let ([abs-pos (fx+ (cdr key) (struct-type-parent-total*-count (car key)))])
|
||||||
|
(raise-unsafe-undefined 'struct-ref "undefined" "use" acc (impersonator-val v) abs-pos)))
|
||||||
r)]
|
r)]
|
||||||
[(impersonator? v)
|
[(impersonator? v)
|
||||||
(loop (impersonator-next v))]
|
(loop (impersonator-next v))]
|
||||||
|
@ -95,7 +96,7 @@
|
||||||
(when (eq? (unsafe-struct*-ref (impersonator-val v) abs-pos) unsafe-undefined)
|
(when (eq? (unsafe-struct*-ref (impersonator-val v) abs-pos) unsafe-undefined)
|
||||||
(unless (eq? (continuation-mark-set-first #f prop:chaperone-unsafe-undefined)
|
(unless (eq? (continuation-mark-set-first #f prop:chaperone-unsafe-undefined)
|
||||||
unsafe-undefined)
|
unsafe-undefined)
|
||||||
(raise-unsafe-undefined 'struct-set! "assignment disallowed" "assign" set (impersonator-val v) pos)))
|
(raise-unsafe-undefined 'struct-set! "assignment disallowed" "assign" set (impersonator-val v) abs-pos)))
|
||||||
(loop (impersonator-next v) a)]
|
(loop (impersonator-next v) a)]
|
||||||
[(impersonator? v)
|
[(impersonator? v)
|
||||||
(loop (impersonator-next v) a)]
|
(loop (impersonator-next v) a)]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user