Fix TR contracts.
original commit: 404fdf00f3dd9a535497d62026687b9c4ff327f4
This commit is contained in:
parent
f9efcae75e
commit
b4596464ae
|
@ -26,8 +26,7 @@
|
|||
[parse-type/id (syntax? c:any/c . c:-> . Type/c)]
|
||||
[parse-tc-results (syntax? . c:-> . tc-results/c)]
|
||||
[parse-tc-results/id (syntax? c:any/c . c:-> . tc-results/c)]
|
||||
[parse-literal-alls (syntax? . c:-> . (values (c:listof identifier?)
|
||||
(c:listof identifier?)))])
|
||||
[parse-literal-alls (syntax? . c:-> . (c:listof (c:or/c (c:listof identifier?) (c:list/c (c:listof identifier?) identifier?))))])
|
||||
|
||||
(provide star ddd/bound)
|
||||
|
||||
|
|
|
@ -358,12 +358,12 @@
|
|||
scoped-tvarss)))
|
||||
|
||||
|
||||
;; tc/plambda syntax syntax-list syntax-list type -> Poly
|
||||
;; tc/plambda syntax tvarss-list syntax-list syntax-list type -> Poly
|
||||
;; formals and bodies must by syntax-lists
|
||||
(define/cond-contract (tc/plambda form tvarss-list formals bodies expected)
|
||||
(syntax? syntax? syntax? (or/c tc-results/c #f) . -> . Type/c)
|
||||
(syntax? (listof list?) syntax? syntax? (or/c tc-results/c #f) . -> . Type/c)
|
||||
(define/cond-contract (maybe-loop form formals bodies expected)
|
||||
(syntax? syntax? syntax? tc-results/c . -> . Type/c)
|
||||
(syntax? syntax? syntax? (or/c tc-results/c #f) . -> . Type/c)
|
||||
(match expected
|
||||
[(tc-result1: (or (Poly: _ _) (PolyDots: _ _)))
|
||||
(tc/plambda form (remove-poly-layer tvarss-list) formals bodies expected)]
|
||||
|
|
Loading…
Reference in New Issue
Block a user