diff --git a/racket/collects/racket/contract/private/provide.rkt b/racket/collects/racket/contract/private/provide.rkt index 4e6c2559ee..7fdbd55658 100644 --- a/racket/collects/racket/contract/private/provide.rkt +++ b/racket/collects/racket/contract/private/provide.rkt @@ -314,7 +314,9 @@ #`(begin (define contract-id ;; let is here to give the right name. - (let ([#,ex-id (coerce-contract '#,contract-error-name ctrct) + (let ([#,ex-id #,(if arrow? + #'ctrct + #`(coerce-contract '#,contract-error-name ctrct)) #;(opt/c ctrct #:error-name #,contract-error-name)]) #,ex-id))