From 8d59ee77e4eefca21f2e27140d2b8bcdf691105e Mon Sep 17 00:00:00 2001 From: Sam Tobin-Hochstadt Date: Thu, 13 May 2010 13:24:41 -0400 Subject: [PATCH] Don't generate type filters for mutated variables. --- collects/typed-scheme/types/abbrev.rkt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/collects/typed-scheme/types/abbrev.rkt b/collects/typed-scheme/types/abbrev.rkt index 5bca67a815..3371df4386 100644 --- a/collects/typed-scheme/types/abbrev.rkt +++ b/collects/typed-scheme/types/abbrev.rkt @@ -9,7 +9,7 @@ scheme/match scheme/promise scheme/flonum (except-in scheme/contract ->* ->) - unstable/syntax + unstable/syntax unstable/mutated-vars (prefix-in c: scheme/contract) (for-syntax scheme/base syntax/parse) (for-template scheme/base scheme/contract scheme/promise scheme/tcp scheme/flonum)) @@ -268,13 +268,13 @@ (d/c (-filter t i [p null]) (c:->* (Type/c name-ref/c) ((listof PathElem?)) Filter/c) - (if (type-equal? Univ t) + (if (or (type-equal? Univ t) (and (identifier? i) (is-var-mutated? i))) -top (make-TypeFilter t p i))) (d/c (-not-filter t i [p null]) (c:->* (Type/c name-ref/c) ((listof PathElem?)) Filter/c) - (if (type-equal? (make-Union null) t) + (if (or (type-equal? (make-Union null) t) (and (identifier? i) (is-var-mutated? i))) -top (make-NotTypeFilter t p i)))