diff --git a/collects/typed-scheme/test.ss b/collects/typed-scheme/test.ss index 097675c0..c4733b51 100644 --- a/collects/typed-scheme/test.ss +++ b/collects/typed-scheme/test.ss @@ -48,4 +48,8 @@ #{(lambda: ([x : Number]) 1) :: (Integer -> Any)} #{(lambda: ([x : Number]) x) :: (Number -> Number)} #{(lambda: ([x : Number]) x) :: (Integer -> Any)} +(define zzz 1) +(set! zzz 2) + +(define-struct: xxx ()) diff --git a/collects/typed-scheme/typecheck/tc-expr-unit.ss b/collects/typed-scheme/typecheck/tc-expr-unit.ss index c1fb45ec..831e0dcd 100644 --- a/collects/typed-scheme/typecheck/tc-expr-unit.ss +++ b/collects/typed-scheme/typecheck/tc-expr-unit.ss @@ -298,8 +298,8 @@ (tc/letrec-values #'((name ...) ...) #'(expr ...) #'body form)] ;; mutation! [(set! id val) - (match-let* ([(tc-result: id-t) (tc-expr #'id)] - [(tc-result: val-t) (tc-expr #'val)]) + (match-let* ([(tc-result1: id-t) (tc-expr #'id)] + [(tc-result1: val-t) (tc-expr #'val)]) (unless (subtype val-t id-t) (tc-error/expr "Mutation only allowed with compatible types:~n~a is not a subtype of ~a" val-t id-t)) (ret -Void))] diff --git a/collects/typed-scheme/typecheck/tc-toplevel.ss b/collects/typed-scheme/typecheck/tc-toplevel.ss index dd771af2..c3295e29 100644 --- a/collects/typed-scheme/typecheck/tc-toplevel.ss +++ b/collects/typed-scheme/typecheck/tc-toplevel.ss @@ -114,7 +114,7 @@ (begin0 (tc-expr #'expr) (restore-errors!)))) => (match-lambda - [(tc-result: t) + [(tc-result1: t) (register-type (car vars) t) (list (make-def-binding (car vars) t))] [t (int-err "~a is not a tc-result" t)])]