From d7503195dfcaea6277351573cc84cc357052a79d Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Sun, 8 Aug 2010 11:24:28 -0500 Subject: [PATCH] fixed a bug where and/c (when given ho contracts) would check them in the wrong order --- collects/racket/contract/private/guts.rkt | 3 +-- collects/tests/racket/contract-test.rktl | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/collects/racket/contract/private/guts.rkt b/collects/racket/contract/private/guts.rkt index 0f1c03298c..88fa0fbd29 100644 --- a/collects/racket/contract/private/guts.rkt +++ b/collects/racket/contract/private/guts.rkt @@ -216,8 +216,7 @@ [(null? projs) proj] [else (loop (cdr projs) (let ([f (car projs)]) - (λ (v) (proj (f v)))))])))))) - + (λ (v) (f (proj v)))))])))))) (define-struct and/c (ctcs) #:omit-define-syntaxes diff --git a/collects/tests/racket/contract-test.rktl b/collects/tests/racket/contract-test.rktl index e9b8562027..d5860c6f4b 100644 --- a/collects/tests/racket/contract-test.rktl +++ b/collects/tests/racket/contract-test.rktl @@ -3220,8 +3220,8 @@ 'pos 'neg) 1) - x) - (reverse '(1 3 4 2))) + (reverse x)) + '(3 1 2 4)) ;