diff --git a/collects/typed-scheme/private/type-contract.rkt b/collects/typed-scheme/private/type-contract.rkt index 0ea776a7..2e7d7aba 100644 --- a/collects/typed-scheme/private/type-contract.rkt +++ b/collects/typed-scheme/private/type-contract.rkt @@ -196,6 +196,8 @@ #:projection (lambda (blame) (lambda (val) + (unless (#,pred? val) + (raise-blame-error blame val "expected ~a value, got ~v" 'cnt-name val)) (maker fld-cnts ...))))]) rec))] [else #`(flat-named-contract '#,(syntax-e pred?) #,(cert pred?))])]