From 9083c6abb4efd17404242724157e33bfdb2a3ab9 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Thu, 20 Jun 2019 18:30:55 -0600 Subject: [PATCH] schemify: use unsafe box operation for lifted mutable variables --- racket/src/schemify/lift.rkt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/racket/src/schemify/lift.rkt b/racket/src/schemify/lift.rkt index 58ba7346f1..5d26efa49f 100644 --- a/racket/src/schemify/lift.rkt +++ b/racket/src/schemify/lift.rkt @@ -527,7 +527,7 @@ [(indirected? info) (reannotate v (if (indirected-check? info) `(set-box!/check-undefined ,id ,(convert rhs) ',id) - `(set-box! ,id ,(convert rhs))))] + `(unsafe-set-box*! ,id ,(convert rhs))))] [else (reannotate v `(set! ,id ,(convert rhs)))])] [`(#%variable-reference . ,_) @@ -590,7 +590,7 @@ (define new-rhs (convert-lifted-calls-in-expr rhs lifts frees empties)) (cond [(indirected? (hash-ref lifts (unwrap id) #f)) - `[,(gensym) (set-box! ,id ,new-rhs)]] + `[,(gensym) (unsafe-set-box*! ,id ,new-rhs)]] [else `[,id ,new-rhs]]))) (define new-bindings (if (null? bindings)