Make tc-lambda not internal error in poly dotted expected contexts.

This commit is contained in:
Eric Dobson 2014-05-13 20:21:20 -07:00
parent 9435a8f447
commit a687415d6b
2 changed files with 5 additions and 1 deletions

View File

@ -481,7 +481,7 @@
constraints
(extend-and-loop form fresh-ns
formals bodies (ret expected*)))]
[(or (tc-results: _) (tc-any-results:) #f)
[_
(define lengths
(for/set ((tvars (in-list tvarss)))
(match tvars

View File

@ -2953,6 +2953,10 @@
(tr:lambda (x #:y [y 3]) x)
#:ret (ret (->key Univ #:y Univ #f Univ) -true-filter)
#:expected (ret (->key Univ #:y Univ #f Univ) -no-filter)]
[tc-err
(lambda xs (plambda: (b) ([x : Any]) 3))
#:ret (ret (-polydots (a) (->... (list) (a a) (-values-dots (list) a 'a))))
#:expected (ret (-polydots (a) (->... (list) (a a) (-values-dots (list) a 'a))))]
)