From af385d6932b6855f199b703f24c569bdc6ef9eb4 Mon Sep 17 00:00:00 2001 From: Asumu Takikawa Date: Fri, 8 Apr 2016 13:43:46 -0400 Subject: [PATCH] Fix issue #336 --- typed-racket-lib/typed-racket/infer/infer-unit.rkt | 2 +- typed-racket-test/succeed/gh-issue-336.rkt | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 typed-racket-test/succeed/gh-issue-336.rkt diff --git a/typed-racket-lib/typed-racket/infer/infer-unit.rkt b/typed-racket-lib/typed-racket/infer/infer-unit.rkt index 1208c9aa..4df1930e 100644 --- a/typed-racket-lib/typed-racket/infer/infer-unit.rkt +++ b/typed-racket-lib/typed-racket/infer/infer-unit.rkt @@ -320,7 +320,7 @@ (% move-dotted-rest-to-dmap (cgen (context-add-var context dbound) s-dty t-dty) dbound dbound*)))] [((seq ss (dotted-end s-dty dbound)) (seq ts (dotted-end t-dty dbound*))) - #:when (inferable-index? context dbound*) + #:return-unless (inferable-index? context dbound*) #f #:return-unless (= (length ss) (length ts)) #f (% cset-meet (cgen/list context ss ts) diff --git a/typed-racket-test/succeed/gh-issue-336.rkt b/typed-racket-test/succeed/gh-issue-336.rkt new file mode 100644 index 00000000..d244fbc5 --- /dev/null +++ b/typed-racket-test/succeed/gh-issue-336.rkt @@ -0,0 +1,8 @@ +#lang typed/racket + +;; Test for github issue #336 + +(: foo (∀ (A ... B ...) (→ (List (→ A ... B) ...) + Any))) +(define (foo f) + (apply conjoin f)) \ No newline at end of file