Parse (A -> B : C) correctly, B can't be a `values'
svn: r14858
This commit is contained in:
parent
ef095c931a
commit
e269f7aa7c
|
@ -356,7 +356,8 @@
|
||||||
(eq? (syntax-e #':) ':))
|
(eq? (syntax-e #':) ':))
|
||||||
(begin
|
(begin
|
||||||
(add-type-name-reference (stx-cadr stx))
|
(add-type-name-reference (stx-cadr stx))
|
||||||
(make-pred-ty (list (parse-type #'dom)) (parse-values-type #'rng) (parse-type #'pred-ty)))]
|
;; use parse-type instead of parse-values-type because we need to add the filters from the pred-ty
|
||||||
|
(make-pred-ty (list (parse-type #'dom)) (parse-type #'rng) (parse-type #'pred-ty)))]
|
||||||
[(dom ... rest ::: -> rng)
|
[(dom ... rest ::: -> rng)
|
||||||
(and (eq? (syntax-e #'->) '->)
|
(and (eq? (syntax-e #'->) '->)
|
||||||
(eq? (syntax-e #':::) '*))
|
(eq? (syntax-e #':::) '*))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user