From 8372ee9f6d5a08e6fe89ca681ea63be5ed34496e Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Sun, 27 Apr 2014 12:48:02 -0700 Subject: [PATCH] Add tests for new letrec semantics. Closes existing bugs because the old broken semantics is now right because of undefined changes. Closer PR 13303. Closer PR 13333. --- .../unit-tests/typecheck-tests.rkt | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt index 835712185e..9546c065c6 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt @@ -2832,6 +2832,33 @@ #:ret (ret (->* (list) Univ Univ)) #:expected (ret (->* (list) Univ Univ))] + [tc-e + (let () + (: a Symbol) + (define a b) + (: b Symbol) + (define b 'x) + a) + -Symbol] + + [tc-e + (let () + (: x Integer) + (define x + (let () + (: f (Integer -> Integer)) + (define (f y) + (g (g y))) + (f 4))) + (: g (Integer -> Integer)) + (define (g x) + (* x x)) + 'x) + -Symbol + #:expected (ret -Symbol)] + + + ) (test-suite "tc-literal tests"