fix wrong results - 25 fails

svn: r14783
This commit is contained in:
Sam Tobin-Hochstadt 2009-05-12 15:30:15 +00:00
parent c19b66d5db
commit e796cd802b
2 changed files with 14 additions and 8 deletions

View File

@ -3,12 +3,12 @@
(require (require
"test-utils.ss" "test-utils.ss"
"planet-requires.ss" "planet-requires.ss"
"typecheck-tests.ss" ;; doesn't compile yet "typecheck-tests.ss" ;;fail
"subtype-tests.ss" ;; pass "subtype-tests.ss" ;; pass
"type-equal-tests.ss" ;; pass "type-equal-tests.ss" ;; pass
"remove-intersect-tests.ss" ;; pass "remove-intersect-tests.ss" ;; pass
"parse-type-tests.ss" ;; pass "parse-type-tests.ss" ;; pass
"type-annotation-test.ss" ;; fail "type-annotation-test.ss" ;; pass
"module-tests.ss" ;; pass "module-tests.ss" ;; pass
"subst-tests.ss" ;; pass "subst-tests.ss" ;; pass
"infer-tests.ss" ;; pass "infer-tests.ss" ;; pass

View File

@ -453,11 +453,15 @@
[tc-e/t (let* ([z 1] [tc-e/t (let* ([z 1]
[p? (lambda: ([x : Any]) (number? z))]) [p? (lambda: ([x : Any]) (number? z))])
(lambda: ([x : Any]) (if (p? x) x 12))) (lambda: ([x : Any]) (if (p? x) x 12)))
(-> Univ Univ : (-LFS null (list (make-LBot))))] (-> Univ Univ : (-LFS (list (-not-filter (-val #f))) (list (-filter (-val #f)))) : (make-LPath null 0))]
[tc-e/t (let* ([z (ann 1 : Any)]
[p? (lambda: ([x : Any]) (not (number? z)))])
(lambda: ([x : Any]) (if (p? x) x 12)))
(-> Univ Univ)]
[tc-e/t (let* ([z 1] [tc-e/t (let* ([z 1]
[p? (lambda: ([x : Any]) (not (number? z)))]) [p? (lambda: ([x : Any]) (not (number? z)))])
(lambda: ([x : Any]) (if (p? x) x 12))) (lambda: ([x : Any]) (if (p? x) x 12)))
(-> Univ Univ : (-LFS (list (-not-filter (-val #f))) (list (-filter (-val #f)))) : (make-LPath null 0))] (-> Univ -Integer : (-LFS null (list (make-LBot))))]
[tc-e/t (let* ([z 1] [tc-e/t (let* ([z 1]
[p? (lambda: ([x : Any]) z)]) [p? (lambda: ([x : Any]) z)])
(lambda: ([x : Any]) (if (p? x) x 12))) (lambda: ([x : Any]) (if (p? x) x 12)))
@ -615,10 +619,12 @@
1 w)) 1 w))
(-polydots (a) ((list -String) (N a) . ->... . N))] (-polydots (a) ((list -String) (N a) . ->... . N))]
;; instantiating non-dotted terms ;; instantiating non-dotted terms
[tc-e (inst (plambda: (a) ([x : a]) x) Integer) [tc-e/t (inst (plambda: (a) ([x : a]) x) Integer)
(make-Function (list (make-arr* (list -Integer) -Integer #:filters (-LFS (list (-not-filter (-val #f))) (list (-filter (-val #f)))))))] (make-Function (list (make-arr* (list -Integer) -Integer
[tc-e (inst (plambda: (a) [x : a *] (apply list x)) Integer) #:filters (-LFS (list (-not-filter (-val #f))) (list (-filter (-val #f))))
((list) -Integer . ->* . (-lst -Integer))] #:object (make-LPath null 0))))]
[tc-e/t (inst (plambda: (a) [x : a *] (apply list x)) Integer)
((list) -Integer . ->* . (-lst -Integer))]
;; instantiating dotted terms ;; instantiating dotted terms
[tc-e (inst (plambda: (a ...) [xs : a ... a] 3) Integer Boolean Integer) [tc-e (inst (plambda: (a ...) [xs : a ... a] 3) Integer Boolean Integer)