syntax-parametereize: fix set!
with rename transformers
Relevant to bootstrapworld/curr#423
This commit is contained in:
parent
62a5086b2a
commit
fa3c5abd00
|
@ -168,6 +168,18 @@
|
||||||
(define trois (slv num))))
|
(define trois (slv num))))
|
||||||
(test #t = trois 3))
|
(test #t = trois 3))
|
||||||
|
|
||||||
|
(let ()
|
||||||
|
(define x 1)
|
||||||
|
(define y 10)
|
||||||
|
(define-rename-transformer-parameter num
|
||||||
|
(make-rename-transformer #'y))
|
||||||
|
(syntax-parameterize ([num (make-rename-transformer #'x)])
|
||||||
|
(test #t = num 1)
|
||||||
|
(set! num 3)
|
||||||
|
(test #t = num 3))
|
||||||
|
(test #t = x 3)
|
||||||
|
(test #t = num 10))
|
||||||
|
|
||||||
;; ----------------------------------------
|
;; ----------------------------------------
|
||||||
|
|
||||||
(let ()
|
(let ()
|
||||||
|
|
|
@ -2,7 +2,8 @@
|
||||||
(module stxparamkey '#%kernel
|
(module stxparamkey '#%kernel
|
||||||
(#%require "small-scheme.rkt" "define.rkt"
|
(#%require "small-scheme.rkt" "define.rkt"
|
||||||
"stxcase.rkt" "stxloc.rkt" "with-stx.rkt"
|
"stxcase.rkt" "stxloc.rkt" "with-stx.rkt"
|
||||||
(only '#%unsafe unsafe-root-continuation-prompt-tag))
|
(only '#%unsafe unsafe-root-continuation-prompt-tag)
|
||||||
|
(for-template '#%kernel))
|
||||||
|
|
||||||
;; Consulted before the expander's table, for use by compile-time
|
;; Consulted before the expander's table, for use by compile-time
|
||||||
;; code wrapped by a run-time-phased `syntax-parameterize`:
|
;; code wrapped by a run-time-phased `syntax-parameterize`:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user