diff --git a/racket/src/expander/common/promise.rkt b/racket/src/expander/common/promise.rkt index b1ff8b6800..3770e2f667 100644 --- a/racket/src/expander/common/promise.rkt +++ b/racket/src/expander/common/promise.rkt @@ -11,12 +11,14 @@ (define-syntax-rule (delay e) (promise (lambda () e) #f)) (define (force v) - (cond [(promise? v) - (define s (promise-status v)) - (cond [(not s) - (define result ((promise-val v))) - (set-promise-val! v result) - (set-promise-status! v #t) - result] - [else (promise-val v)])] - [else v])) + (cond + [(promise? v) + (define s (promise-status v)) + (cond + [(not s) + (define result ((promise-val v))) + (set-promise-val! v result) + (set-promise-status! v #t) + result] + [else (promise-val v)])] + [else v]))