Fix subtype for filters in AnyValues.

This commit is contained in:
Eric Dobson 2014-06-20 23:11:38 -07:00
parent b199527ec2
commit fc649c6b99
2 changed files with 5 additions and 1 deletions

View File

@ -565,7 +565,9 @@
(for/or ([f (in-list fs)])
(match f
[(FilterSet: f+ f-)
(and (filter-subtype* A0 f+ t-f) (filter-subtype* A0 f+ t-f) A0)]))]
(subtype-seq A0
(filter-subtype* f+ t-f)
(filter-subtype* f- t-f))]))]
[((Result: t (FilterSet: ft ff) o) (Result: t* (FilterSet: ft* ff*) o))
(subtype-seq A0
(subtype* t t*)

View File

@ -267,6 +267,8 @@
[(-> Univ -Bottom) (-> Univ (-values (list -String -Symbol)))]
[(-> Univ -Bottom) (-> Univ (-values-dots null -String 'x))]
[FAIL (make-pred-ty -String) (-> Univ (-AnyValues (-filter -String 0)))]
;; keyword function types
[(->key #:x -Symbol #f Univ) (->key Univ)]
[FAIL (->key #:x -Symbol #t Univ) (->key Univ)]