From 2b0df2f9606229cd7ba1786d66c0cb64ae52e40a Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Thu, 29 May 2014 22:43:08 -0700 Subject: [PATCH] Make tc-results->values not drop filters. original commit: 2ba070c6b31f7c2f7dcd36d52d9cce41b0436d9e --- .../typed-racket/typecheck/tc-metafunctions.rkt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-metafunctions.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-metafunctions.rkt index 1a3252b1..0c89c55c 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-metafunctions.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-metafunctions.rkt @@ -5,7 +5,7 @@ (except-in (types abbrev union utils filter-ops tc-result) -> ->* one-of/c) (rep type-rep filter-rep object-rep rep-utils) - (typecheck tc-subst) + (typecheck tc-subst check-below) (contract-req)) (provide abstract-results @@ -164,10 +164,13 @@ i)]))) (define (tc-results->values tc) - (match tc - [(tc-any-results: _) ManyUniv] - [(tc-results: ts) (-values ts)] - [(tc-results: ts _ _ dty dbound) (-values-dots ts dty dbound)])) + (match (fix-results tc) + [(tc-any-results: f) + (-AnyValues f)] + [(tc-results: ts fs os) + (make-Values (map -result ts fs os))] + [(tc-results: ts fs os dty dbound) + (make-ValuesDots (map -result ts fs os) dty dbound)])) (define/cond-contract (resolve atoms prop) ((listof Filter/c)