diff --git a/collects/unstable/srcloc.ss b/collects/unstable/srcloc.ss index 89251f6318..1eb1384416 100644 --- a/collects/unstable/srcloc.ss +++ b/collects/unstable/srcloc.ss @@ -231,12 +231,22 @@ (define (process-syntax x good bad name) (process-elements x good bad name - (syntax-source x) + (syntax-get-source x) (syntax-line x) (syntax-column x) (syntax-position x) (syntax-span x))) +(define (syntax-get-source x) + (cond + [(syntax-source-module x) => + (lambda (src) + (if (module-path-index? src) + (resolved-module-path-name + (module-path-index-resolve src)) + src))] + [else (syntax-source x)])) + (define (process-list x good bad name) (cond [(null? x)