original commit: 01bf1a42af2e50662c1a792959dfc063df876cc9
This commit is contained in:
Matthew Flatt 2004-11-25 16:21:18 +00:00
parent dc69f0b229
commit 6d0d143b23
2 changed files with 14 additions and 11 deletions

View File

@ -462,21 +462,23 @@ add struct contracts for immutable structs?
(syntax _))]
[(_ arg (... ...))
(syntax
((-contract contract-id
id
pos-module-source
(module-source-as-symbol #'neg-stx)
(quote-syntax _))
((begin-lifted
(-contract contract-id
id
pos-module-source
(module-source-as-symbol #'neg-stx)
(quote-syntax _)))
arg
(... ...)))]
[_
(identifier? (syntax _))
(syntax
(-contract contract-id
id
pos-module-source
(module-source-as-symbol #'neg-stx)
(quote-syntax _)))]))))))))))
(begin-lifted
(-contract contract-id
id
pos-module-source
(module-source-as-symbol #'neg-stx)
(quote-syntax _))))]))))))))))
(with-syntax ([(bodies ...) (code-for-each-clause (syntax->list (syntax (p/c-ele ...))))])
(syntax

View File

@ -560,4 +560,5 @@
(define-syntax (begin-lifted stx)
(syntax-case stx ()
[(_ expr0 expr ...)
(syntax-local-lift-expression #'(begin expr0 expr ...))])))
(syntax-local-lift-expression
#'(begin expr0 expr ...))])))