From 19cfe4e49ed6cb8e0346df8f7ae2704eaf82d7d2 Mon Sep 17 00:00:00 2001 From: Stevie Strickland Date: Fri, 12 Sep 2008 18:55:11 +0000 Subject: [PATCH] I hate this kind of error checking. svn: r11696 --- collects/scheme/private/contract.ss | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/collects/scheme/private/contract.ss b/collects/scheme/private/contract.ss index b932ac25a6..127f97c586 100644 --- a/collects/scheme/private/contract.ss +++ b/collects/scheme/private/contract.ss @@ -233,13 +233,20 @@ improve method arity mismatch contract violation error messages? [(_ blame (arg ...) body0 body ...) #'(with-contract #:type region blame (arg ...) body0 body ...)] [(_ blame (arg ...)) + (identifier? #'blame) (raise-syntax-error 'with-contract "empty body" stx)] [(_ blame bad-args etc ...) + (identifier? #'blame) (raise-syntax-error 'with-contract "expected list of identifier and/or (identifier contract)" #'bad-args)] + [(_ args etc ...) + (not (identifier? #'args)) + (raise-syntax-error 'with-contract + "expected identifier for blame" + #'args)] [(_ blame) (raise-syntax-error 'with-contract "only blame"