From 6c069c38bdc80da1b021953bfb6362d7424fb8bf Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Mon, 28 Apr 2014 21:12:40 -0700 Subject: [PATCH] Simplify poly drest case in tc-apply. original commit: cee3a3f2e195556af36018660327fb86f7b86f07 --- .../typed-racket-lib/typed-racket/typecheck/tc-apply.rkt | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-apply.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-apply.rkt index ddd72fb4..05eb414e 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-apply.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-apply.rkt @@ -98,12 +98,11 @@ (list (-Tuple domain)) range)) => finish] - ;; ... function, ... arg + ;; ... function [(and drest - tail-bound - (eq? tail-bound (cdr drest)) - (= (length domain) (length arg-tys)) - (infer vars null (cons tail-ty arg-tys) (cons (car drest) domain) + (infer vars null + (list (-Tuple* arg-tys full-tail-ty)) + (list (-Tuple* domain (make-ListDots (car drest) (cdr drest)))) range)) => finish] [else #f]))