diff --git a/collects/stxclass/private/codegen.ss b/collects/stxclass/private/codegen.ss index ba26d8c07d..4a08c7720b 100644 --- a/collects/stxclass/private/codegen.ss +++ b/collects/stxclass/private/codegen.ss @@ -111,8 +111,9 @@ (let ([inner (wrap-pvars (pattern-attrs p) (convert-sides rest main-var body-expr))]) - (with-syntax ([(x fail-k) (generate-temporaries #'(x fail-k))]) - #`(let ([x #,e] + (with-syntax ([(x fail-k) (generate-temporaries #'(x fail-k))] + [with-rhs (syntax/loc e with-rhs)]) + #`(let ([x (datum->syntax #f #,e (quote-syntax with-rhs))] [fail-k enclosing-fail]) #,(parse:pks (list #'x) (list (done-frontier #'x))