From ca2b4eaa42af879630ba4ca6a4169308bcb8fa3e Mon Sep 17 00:00:00 2001 From: Sam Tobin-Hochstadt Date: Sun, 12 Feb 2012 14:30:01 -0500 Subject: [PATCH] Parameters can overlap with procedure types. Closes PR 11993. original commit: d0fbe825e6d80e925a2d94412a701366e5844fcf --- collects/tests/typed-racket/succeed/parameter-proc.rkt | 7 +++++++ collects/typed-racket/rep/type-rep.rkt | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 collects/tests/typed-racket/succeed/parameter-proc.rkt diff --git a/collects/tests/typed-racket/succeed/parameter-proc.rkt b/collects/tests/typed-racket/succeed/parameter-proc.rkt new file mode 100644 index 00000000..ef95fb22 --- /dev/null +++ b/collects/tests/typed-racket/succeed/parameter-proc.rkt @@ -0,0 +1,7 @@ +#lang typed/racket +(require/typed racket + (current-directory (-> Path))) + +(unless (equal? (parameter? current-directory) + (if (parameter? current-directory) #t #f)) + (error 'unsound!)) \ No newline at end of file diff --git a/collects/typed-racket/rep/type-rep.rkt b/collects/typed-racket/rep/type-rep.rkt index 5ad74889..1f55ced5 100644 --- a/collects/typed-racket/rep/type-rep.rkt +++ b/collects/typed-racket/rep/type-rep.rkt @@ -366,7 +366,7 @@ ;; in : Type ;; out : Type (def-type Param ([in Type/c] [out Type/c]) - [#:key 'parameter] + [#:key 'procedure] [#:frees (λ (f) (combine-frees (list (f out) (flip-variances (f in)))))]) ;; key : Type