Copy properties when optimizing bodies of lambda/define-values.
Closes PR 11860.
This commit is contained in:
parent
187dc63493
commit
981616d504
|
@ -37,7 +37,9 @@
|
||||||
;; boring cases, just recur down
|
;; boring cases, just recur down
|
||||||
(pattern ((~and op (~or (~literal #%plain-lambda) (~literal define-values)))
|
(pattern ((~and op (~or (~literal #%plain-lambda) (~literal define-values)))
|
||||||
formals e:expr ...)
|
formals e:expr ...)
|
||||||
#:with opt #`(op formals #,@(syntax-map (optimize) #'(e ...))))
|
#:with opt (syntax-track-origin (quasisyntax/loc this-syntax (op formals #,@(syntax-map (optimize) #'(e ...))))
|
||||||
|
this-syntax
|
||||||
|
#'op))
|
||||||
(pattern (case-lambda [formals e:expr ...] ...)
|
(pattern (case-lambda [formals e:expr ...] ...)
|
||||||
;; optimize all the bodies
|
;; optimize all the bodies
|
||||||
#:with (opt-parts ...)
|
#:with (opt-parts ...)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user