File tree 1 file changed +13
-9
lines changed
1 file changed +13
-9
lines changed Original file line number Diff line number Diff line change 116
116
(define bad-kws (set-intersect used-kws satisfying-disallowed-kws))
117
117
(syntax-case stx (=)
118
118
[(form lang #:satisfying (mf-id . args) = res property . kw-args)
119
- (unless (set-empty? bad-kws)
120
- (raise-syntax-error 'redex-check (format "~s cannot be used with #:satisfying " (car (set->list bad-kws))) stx))
121
- (redex-check/mf stx #'form #'lang #'mf-id #'args #'res #'property #'kw-args )]
119
+ (begin
120
+ (unless (set-empty? bad-kws)
121
+ (raise-syntax-error 'redex-check (format "~s cannot be used with #:satisfying " (car (set->list bad-kws))) stx))
122
+ (redex-check/mf stx #'form #'lang #'mf-id #'args #'res #'property #'kw-args ))]
122
123
[(form lang #:satisfying (jform-id . pats) property . kw-args)
123
- (unless (set-empty? bad-kws)
124
- (raise-syntax-error 'redex-check (format "~s cannot be used with #:satisfying " (car (set->list bad-kws))) stx))
125
- (syntax-property
126
- (redex-check/jf stx #'form #'lang #'jform-id #'pats #'property #'kw-args )
127
- 'disappeared-use
128
- (syntax-local-introduce #'jform-id ))]
124
+ (begin
125
+ (unless (set-empty? bad-kws)
126
+ (raise-syntax-error 'redex-check (format "~s cannot be used with #:satisfying " (car (set->list bad-kws))) stx))
127
+ (when (keyword? (syntax-e #'property ))
128
+ (raise-syntax-error 'redex-check "expected a property " stx #'property ))
129
+ (syntax-property
130
+ (redex-check/jf stx #'form #'lang #'jform-id #'pats #'property #'kw-args )
131
+ 'disappeared-use
132
+ (syntax-local-introduce #'jform-id )))]
129
133
[(form lang #:satisfying . rest)
130
134
(raise-syntax-error 'redex-check "#:satisfying expected judgment form or metafunction syntax followed by a property " stx #'rest )]
131
135
[(form lang pat #:enum biggest-e property . kw-args)
You can’t perform that action at this time.
0 commit comments