diff --git a/collects/scribble/private/manual-proc.ss b/collects/scribble/private/manual-proc.ss index 47879aee7a..9a56a411a8 100644 --- a/collects/scribble/private/manual-proc.ss +++ b/collects/scribble/private/manual-proc.ss @@ -118,16 +118,17 @@ [(_ [[proto result] ...] desc ...) (defproc* #:mode procedure #:within #f [[proto result] ...] desc ...)] [(_ #:mode m #:within cl [[proto result] ...] desc ...) - (with-togetherable-scheme-variables - () - ([proc proto] ...) - (*defproc 'm (quote-syntax/loc cl) - (list (extract-proc-id proto) ...) - '[proto ...] - (list (arg-contracts proto) ...) - (list (arg-defaults proto) ...) - (list (lambda () (result-contract result)) ...) - (lambda () (list desc ...))))])) + (let ([arg-contracts (list (arg-contracts proto) ...)]) + (with-togetherable-scheme-variables + () + ([proc proto] ...) + (*defproc 'm (quote-syntax/loc cl) + (list (extract-proc-id proto) ...) + '[proto ...] + arg-contracts + (list (arg-defaults proto) ...) + (list (lambda () (result-contract result)) ...) + (lambda () (list desc ...)))))])) (define-struct arg (special? kw id optional? starts-optional? ends-optional? num-closers))