Make TR's lambda not do datum->syntax.
original commit: dce13a36b97307abed9d0c3e40a0930476016ef1
This commit is contained in:
parent
8663df8104
commit
6c5372e15f
|
@ -1066,8 +1066,6 @@ This file defines two sorts of primitives. All of them are provided into any mod
|
|||
(define-syntax (-lambda stx)
|
||||
(syntax-parse stx
|
||||
[(_ formals . body)
|
||||
(define d (datum->syntax stx `(,#'λ ,#'formals . ,#'body)
|
||||
stx stx))
|
||||
(define-values (has-kw? has-opt?)
|
||||
(syntax-parse #'formals
|
||||
((~or (~and rest:id (~bind ((args 1) null)))
|
||||
|
@ -1077,7 +1075,11 @@ This file defines two sorts of primitives. All of them are provided into any mod
|
|||
(values
|
||||
(ormap keyword? (map syntax-e arg-list))
|
||||
(ormap syntax->list arg-list)))))
|
||||
(opt-lambda-property (kw-lambda-property d has-kw?) has-opt?)]))
|
||||
(opt-lambda-property
|
||||
(kw-lambda-property
|
||||
(syntax/loc stx (λ formals . body))
|
||||
has-kw?)
|
||||
has-opt?)]))
|
||||
|
||||
;; do this ourselves so that we don't get the static bindings,
|
||||
;; which are harder to typecheck
|
||||
|
|
Loading…
Reference in New Issue
Block a user