Fixed syntax/parse bug:
Syntax classes with keyword arguments were unintentionally requiring all arguments at an application site to be in alphabetical order. Added a test for this fix.
This commit is contained in:
parent
59731368fc
commit
97642c1cb6
|
@ -46,7 +46,7 @@ An Arity is
|
|||
(arity-maxpos arity)
|
||||
(arity-minkws arity)
|
||||
(arity-maxkws arity)
|
||||
pos-count keywords)])
|
||||
pos-count (sort keywords keyword<?))])
|
||||
(when msg
|
||||
(proc msg))))
|
||||
|
||||
|
@ -55,7 +55,7 @@ An Arity is
|
|||
(arity-maxpos arity)
|
||||
(arity-minkws arity)
|
||||
(arity-maxkws arity)
|
||||
pos-count keywords)])
|
||||
pos-count (sort keywords keyword<?))])
|
||||
(when msg
|
||||
(proc msg))))
|
||||
|
||||
|
|
|
@ -194,3 +194,9 @@
|
|||
#:with c #'c0
|
||||
#:declare c (Nat> (syntax-e #'b0))
|
||||
(void)])
|
||||
|
||||
(define-syntax-class (Nat-Between #:lo lo #:hi hi)
|
||||
#:description (format "~s <= Nat <= ~s" lo hi)
|
||||
(pattern x:nat #:when (<= lo (syntax-e #'x) hi)))
|
||||
(syntax-parse #'5
|
||||
[(~var _ (Nat-Between #:lo 0 #:hi 10)) (void)])
|
||||
|
|
Loading…
Reference in New Issue
Block a user