From 8978c83b18bed1fe61f6bef0e0432e8d6108ff0d Mon Sep 17 00:00:00 2001 From: Asumu Takikawa Date: Mon, 26 Aug 2013 15:12:16 -0400 Subject: [PATCH] Fix TR internal error The following expression would trigger an arity error: (subst-all (make-simple-substitution (list 'a 'z) (list (-val 3) (-val 5))) (make-ListDots (make-F 'z) 'a)) --- .../typed-racket-lib/typed-racket/types/substitute.rkt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/substitute.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/substitute.rkt index c0040a985b..820bc08d0e 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/substitute.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/types/substitute.rkt @@ -67,13 +67,13 @@ (map sb kws))])] [#:ValuesDots types dty dbound (cond - [(ormap (lambda (x) (and (equal? dbound x) (not bound-tvar? x))) names) => + [(ormap (lambda (x) (and (equal? dbound x) (not (bound-tvar? x)))) names) => (lambda (name) (int-err "substitute used on ... variable ~a in type ~a" name target))] [else (make-ValuesDots (map sb types) (sb dty) dbound)])] [#:ListDots dty dbound (cond - [(ormap (lambda (x) (and (equal? dbound x) (not bound-tvar? x))) names) => + [(ormap (lambda (x) (and (equal? dbound x) (not (bound-tvar? x)))) names) => (lambda (name) (int-err "substitute used on ... variable ~a in type ~a" name target))] [else (make-ListDots (sb dty) dbound)])])