disallow constant folding of mutable field access
original commit: 7ac8cd69fc709200c1c0064f8031855a950ea8d3
This commit is contained in:
parent
4341bba898
commit
e53a4a8de2
1
s/cp0.ss
1
s/cp0.ss
|
@ -5004,6 +5004,7 @@
|
||||||
(or (nanopass-case (Lsrc Expr) (result-exp e0)
|
(or (nanopass-case (Lsrc Expr) (result-exp e0)
|
||||||
[(quote ,d)
|
[(quote ,d)
|
||||||
(and (record? d rtd)
|
(and (record? d rtd)
|
||||||
|
(not (csv7:record-field-mutable? rtd index))
|
||||||
(make-seq ctxt e0 `(quote ,((csv7:record-field-accessor rtd index) d))))]
|
(make-seq ctxt e0 `(quote ,((csv7:record-field-accessor rtd index) d))))]
|
||||||
[(record ,rtd1 ,rtd-expr ,e* ...)
|
[(record ,rtd1 ,rtd-expr ,e* ...)
|
||||||
(let loop ([e* e*] [re* '()] [index index])
|
(let loop ([e* e*] [re* '()] [index index])
|
||||||
|
|
Loading…
Reference in New Issue
Block a user