From 08adb59b66cecc24a1c4ddc2007c2e87700f438f Mon Sep 17 00:00:00 2001 From: Vincent St-Amour Date: Fri, 8 Nov 2013 15:59:40 -0500 Subject: [PATCH] Have optimizer ignore contract definitions. This bug was hidden by a bug in syntax/parse. original commit: 80fba7f42d98255b1ab8a8e1c48d62f17303bf11 --- .../typed-racket/private/type-contract.rkt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/private/type-contract.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/private/type-contract.rkt index fa495923..9b300739 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/private/type-contract.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/private/type-contract.rkt @@ -78,12 +78,14 @@ #:typed-side #f #:kind kind (type->contract-fail typ prop))]) - (quasisyntax/loc - stx - (define-values (n) - (recursive-contract - cnt - #,(contract-kind->keyword kind))))))] + (ignore-property ; should be ignored by the optimizer + (quasisyntax/loc + stx + (define-values (n) + (recursive-contract + cnt + #,(contract-kind->keyword kind)))) + #t)))] [_ (int-err "should never happen - not a define-values: ~a" (syntax->datum stx))]))