Uh oh!
There was an error while loading. Please reload this page.
syntax: Unify macro and attribute arguments in AST - #66935
Conversation
petrochenkov
commented
Dec 1, 2019
TODO (not in this PR):
|
petrochenkov
commented
Dec 1, 2019
Oh, this PR also basically implements "macro constants" in terms of representation (except they are still an error during parsing). |
petrochenkov
commented
Dec 1, 2019
@bors try @rust-timer queue |
rust-timer
commented
Dec 1, 2019
Awaiting bors try build completion |
bors
commented
Dec 1, 2019
⌛ Trying commit eadf48aec3e87d05c7101a92612ad094c4e0ea92 with merge 6858a2a7cb74e10251ba66cd547b555717bfaff2... |
Centril
left a comment
There was a problem hiding this comment.
Looks good; some minor nits is all I have.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
bors
commented
Dec 1, 2019
☀️ Try build successful - checks-azure |
rust-timer
commented
Dec 1, 2019
Queued 6858a2a7cb74e10251ba66cd547b555717bfaff2 with parent 4007d4e, future comparison URL. |
rust-timer
commented
Dec 2, 2019
Finished benchmarking try commit 6858a2a7cb74e10251ba66cd547b555717bfaff2, comparison URL. |
nnethercote
commented
Dec 2, 2019
A very slight performance improvement. |
Also remove a couple of redundant `visit_mac` asserts
petrochenkov
commented
Dec 2, 2019
Updated. |
Centril
commented
Dec 3, 2019
Thanks! @bors r+ |
bors
commented
Dec 3, 2019
📌 Commit 498737c has been approved by |
syntax: Unify macro and attribute arguments in AST The unified form (`ast::MacArgs`) represents parsed arguments instead of an unstructured token stream that was previously used for attributes. It also tracks some spans and delimiter kinds better for fn-like macros and macro definitions. I've been talking about implementing this with @nnethercote in rust-lang#65750 (comment). The parsed representation is closer to `MetaItem` and requires less token juggling during conversions, so it potentially may be faster. r? @Centril
syntax: Unify macro and attribute arguments in AST The unified form (`ast::MacArgs`) represents parsed arguments instead of an unstructured token stream that was previously used for attributes. It also tracks some spans and delimiter kinds better for fn-like macros and macro definitions. I've been talking about implementing this with @nnethercote in rust-lang#65750 (comment). The parsed representation is closer to `MetaItem` and requires less token juggling during conversions, so it potentially may be faster. r? @Centril
Rollup of 6 pull requests Successful merges: - #66148 (Show the sign for signed ops on `exact_div`) - #66651 (Add `enclosing scope` parameter to `rustc_on_unimplemented`) - #66904 (Adding docs for keyword match, move) - #66935 (syntax: Unify macro and attribute arguments in AST) - #66941 (Remove `ord` lang item) - #66967 (Remove hack for top-level or-patterns in match checking) Failed merges: r? @ghost
Rustup Included rustups: - rust-lang/rust#66935 (syntax: Unify macro and attribute arguments in AST) - rust-lang/rust#66941 (Remove `ord` lang item) Fixes? #2597 changelog: none
The unified form (
ast::MacArgs) represents parsed arguments instead of an unstructured token stream that was previously used for attributes.It also tracks some spans and delimiter kinds better for fn-like macros and macro definitions.
I've been talking about implementing this with @nnethercote in #65750 (comment).
The parsed representation is closer to
MetaItemand requires less token juggling during conversions, so it potentially may be faster.r? @Centril