
See also commit 5cd5f77
“Don't allow promises created with `delay/name` as `(Promise T)`.”.
The contracts in `typed-racket-lib/typed-racket/static-contracts/combinators/structural.rkt` should be just a single identifier, not a lambda expression, because `typed-racket-lib/typed-racket/private/type-contract.rkt` relies on that, and passes the contract name to free-identifier=?, which won't work on a lambda.
6 lines
86 B
Racket
6 lines
86 B
Racket
#lang typed/racket
|
|
|
|
(struct (A) s ([f : Any]))
|
|
(define p (delay (s "a")))
|
|
(provide p)
|