-
Notifications
You must be signed in to change notification settings - Fork 27
Macro hygiene #68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I'm interested in contributing this improvement, since I have experience with writing hygienic procedural macros, but I'd like to make sure it's wanted first. |
Good idea! I'd like to review it if you're willing to submit a PR. |
I'll see when I have some spare time. I should be able to do this within a month or so, though. |
I made an attempt, but it seems neither I don't currently have the bandwidth to implement macro hygiene for all three crates, so I won't work on it until/unless it becomes a blocker for me. (Consider the attempt abandoned. I'll let you know before I retry.) |
I noticed that the
#[trace]
macro useslet
-bindings in unspanned and call-site-spanned quotes and also refers to items without fully qualified path.This can lead to hard-to-work-around identifier collisions.
Additionally, (on stable) only mixed-site spans suppress warnings in macro-generated code (as long as the macro is defined outside the current workspace, at least).
The text was updated successfully, but these errors were encountered: