[racket-dev] syntax-case and stack trace
At Fri, 15 Jul 2011 21:53:59 -0500, Casey Klein wrote:
> FWIW, the big taints commit also changed the value of this expression:
>
> (let ([s #'x])
> (equal? s
> (with-handlers ([exn:fail:syntax? (compose first
> exn:fail:syntax-exprs)])
> (raise-syntax-error #f "message" s))))
That's intentional, although I don't think it's correctly documented
(and probably not yet implemented right) that syntax objects in an
`exn:fail:syntax' are always tainted. I'll work on that.
The expression could be fixed for taints as
(let ([s (syntax-taint #'x)])
(equal? s
....))