typed-racket/typed-racket-test/succeed/contract-struct-equality.rkt
2014-12-16 10:07:25 -05:00

24 lines
438 B
Racket

#lang racket/load
(module typed typed/racket
(provide g)
(struct: (A) foo ((v : A)))
(: f (foo Byte))
(define f (foo 2))
(: g (-> (foo Byte)))
(define (g) f))
(module typed-client typed/racket
(require 'typed)
(unless (equal? (g) (g))
(error 'typed2 "Failed")))
(module untyped-client racket
(require 'typed)
(unless (equal? (g) (g))
(error 'typed2 "Failed")))
(require 'typed-client)
(require 'untyped-client)