From c7b5783088d63195215369f0edd9ba0f6d3aea69 Mon Sep 17 00:00:00 2001 From: AlexKnauth Date: Fri, 9 Sep 2016 20:25:53 -0400 Subject: [PATCH] disarm and rearm syntax in syntax-srcloc-lens fixes part of https://github.com/jackfirth/lens/issues/287 see also https://github.com/racket/racket/pull/1448 --- lens-data/lens/private/syntax/srcloc.rkt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lens-data/lens/private/syntax/srcloc.rkt b/lens-data/lens/private/syntax/srcloc.rkt index 08e80f5..74ed07a 100644 --- a/lens-data/lens/private/syntax/srcloc.rkt +++ b/lens-data/lens/private/syntax/srcloc.rkt @@ -39,10 +39,13 @@ module+ test ;; syntax-set-source-location : Syntax Source-Location -> Syntax (define (syntax-set-source-location stx src) - (datum->syntax stx - (syntax-e stx) - (source-location->list src) - stx)) + (define stx* (syntax-disarm stx #f)) + (syntax-rearm + (datum->syntax stx* + (syntax-e stx*) + (source-location->list src) + stx*) + stx)) (define syntax-srcloc-lens (make-lens