From 3e13359ef39b05b3150a1fe41beaab009a3e92f2 Mon Sep 17 00:00:00 2001 From: Andrew Kent Date: Tue, 20 Dec 2016 12:36:26 -0500 Subject: [PATCH] fix errors from 8e7f390 --- typed-racket-lib/typed-racket/infer/infer-unit.rkt | 6 ++++-- .../typed-racket/typecheck/tc-app/tc-app-lambda.rkt | 3 +-- .../typed-racket/typecheck/tc-app/tc-app-list.rkt | 2 +- typed-racket-test/unit-tests/infer-tests.rkt | 4 ++-- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/typed-racket-lib/typed-racket/infer/infer-unit.rkt b/typed-racket-lib/typed-racket/infer/infer-unit.rkt index 8dfd31e0..a8b1ca31 100644 --- a/typed-racket-lib/typed-racket/infer/infer-unit.rkt +++ b/typed-racket-lib/typed-racket/infer/infer-unit.rkt @@ -869,8 +869,10 @@ (or/c #f Values/c ValuesDots?)) ((or/c #f Values/c AnyValues? ValuesDots?) #:multiple? boolean?) - . ->* . (or/c #f substitution/c (cons/c substitution/c - (listof substitution/c)))) + . ->* . (or/c boolean? + substitution/c + (cons/c substitution/c + (listof substitution/c)))) (define ctx (context null X Y )) (define expected-cset (if expected diff --git a/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-lambda.rkt b/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-lambda.rkt index dadc874a..59d2b745 100644 --- a/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-lambda.rkt +++ b/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-lambda.rkt @@ -53,8 +53,7 @@ expected))))) -(define/cond-contract - (let-loop-check lam lp actuals args body expected) +(define/cond-contract (let-loop-check lam lp actuals args body expected) (syntax? syntax? syntax? syntax? syntax? tc-results/c . --> . full-tc-results/c) (syntax-parse #`(#,args #,body #,actuals) #:literal-sets (kernel-literals lambda-literals) diff --git a/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-list.rkt b/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-list.rkt index 8019c182..58d5e6d9 100644 --- a/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-list.rkt +++ b/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-list.rkt @@ -111,7 +111,7 @@ (ret (-Tuple argtys)))) (or result (begin (expected-but-got t (-Tuple (map tc-expr/t args-list))) - expected))] + (fix-results expected)))] [else (ret (-Tuple (map tc-expr/t args-list)))])])] [_ (ret (-Tuple (map tc-expr/t args-list)))]))) ;; special case for `list*' diff --git a/typed-racket-test/unit-tests/infer-tests.rkt b/typed-racket-test/unit-tests/infer-tests.rkt index 3a23f777..b4a7096f 100644 --- a/typed-racket-test/unit-tests/infer-tests.rkt +++ b/typed-racket-test/unit-tests/infer-tests.rkt @@ -71,8 +71,8 @@ (test-suite "Test suite for fi" [fi-t (make-ValuesDots null (-v a) 'a) [a variance:co]] - [fi-t (->... (list) ((-v a) (-v a)) (make-ValuesDots null (-v a) 'a)) - [a variance:co]])) + [fi-t (->... (list) ((-lst (-v a)) b) -Symbol) + [b variance:contra]])) (define-syntax (pd-t stx) (syntax-parse stx