-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Improve interpolation of macro lhs and doc comments. Remove Matcher
s
#17830
Conversation
Does this handle the following? // other, so the result of the whole thing should be "let z_123 = 3; z_123
macro_rules! g (
($x:ident) =>
(
{macro_rules! f(
($y:ident)=>({let $y=3;$x})
);
f!($x)})
)
fn a(){g!(z)} (If not, we probably shouldn't close #6994.) |
cd6acf6
to
ca86531
Compare
cc me (I will try to review on Monday if no one else gets to it in the meantime). |
@pczarn (okay, I'll try to avoid making comments about things that were addressed in later commits ... ) |
2bb45dd
to
e3b0399
Compare
99a5f0e
to
9f67980
Compare
Feel free to ping the PR whenever you force-push it, sadly github doesn't send out notifications for that kind of event! |
d1606f2
to
2229754
Compare
@alexcrichton Look like it was updated |
Yes, and this update actually works. I didn't have time to find mistakes after rebasing, previously |
Closes #14197 Removes the `matchers` nonterminal. If you're using `$foo:matchers` in a macro, write `$foo:tt` instead. [breaking-change]
Prevents breaking down `$name` tokens into separate `$` and `name`. Reports unknown macro variables. Fixes rust-lang#18775 Fixes rust-lang#18839 Fixes rust-lang#15640
Prevents breaking down `$name` tokens into separate `$` and `name`. Reports unknown macro variables. Fixes rust-lang#18775 Fixes rust-lang#18839 Fixes rust-lang#15640
Closes #14197
Removes the
matchers
nonterminal.If you're using
$foo:matchers
in a macro, write$foo:tt
instead.[breaking-change]