syntax/parse: fix ~between; closes #2856

Please merge to release branch.
This commit is contained in:
Ryan Culpepper 2019-10-14 04:09:22 +02:00
parent edfcec8211
commit ca2eafbfc4
3 changed files with 7 additions and 1 deletions

View File

@ -16,6 +16,7 @@
bound bound
s= s=
a= a=
convert-compile-time-error
convert-syntax-error) convert-syntax-error)
#| #|

View File

@ -1054,3 +1054,8 @@
[(_ (~or (~seq a b c (~parse (d e f) #'(a b c))) [(_ (~or (~seq a b c (~parse (d e f) #'(a b c)))
(~seq x:id ...))) (~seq x:id ...)))
(void)]))) (void)])))
;; from @jjsimpso, ~between pattern (10/2019)
(convert-compile-time-error
(syntax-parse #'(1 2 'bar 4 5 'bar 'foo)
[((~seq (~between x:nat 2 2) ... z) ...+ expr) (void)]))

View File

@ -1176,7 +1176,7 @@
[name [name
(options-select-value chunks '#:name #:default #'#f)]) (options-select-value chunks '#:name #:default #'#f)])
(list (create-ehpat head (list (create-ehpat head
(make rep:bounds #'min #'max (make rep:bounds minN maxN
name too-few-msg too-many-msg) name too-few-msg too-many-msg)
#'p) #'p)
#'p)))])) #'p)))]))