Fix TR contracts.

original commit: 404fdf00f3dd9a535497d62026687b9c4ff327f4
This commit is contained in:
Vincent St-Amour 2013-05-31 21:08:52 -04:00
parent f9efcae75e
commit b4596464ae
2 changed files with 4 additions and 5 deletions

View File

@ -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)

View File

@ -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)]