Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

[WIP] Implement token-based handling of attributes #80689

Closed
wants to merge 7 commits into from

Conversation

Aaron1011
Copy link
Member

Still needs some cleanup, opening for a preliminary perf run.

@rust-highfive
Copy link
Collaborator

r? @estebank

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 4, 2021
@Aaron1011
Copy link
Member Author

r? @ghost

@Aaron1011
Copy link
Member Author

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@bors
Copy link
Contributor

bors commented Jan 4, 2021

⌛ Trying commit 5e727f7b6211c00ff10c3e30fffd32c18256e968 with merge 5c23164c47aa9fef76aaf12c9208d3734277eedf...

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@bors

This comment has been minimized.

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 4, 2021
@rust-log-analyzer

This comment has been minimized.

@Aaron1011
Copy link
Member Author

@bors try

@bors
Copy link
Contributor

bors commented Jan 4, 2021

⌛ Trying commit 56295554ac24cd134a63951231028bd0e8392556 with merge d1b1f4501d48606232f1e44f2b76d126f68f3aea...

@Aaron1011
Copy link
Member Author

@rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@bors
Copy link
Contributor

bors commented Jan 4, 2021

☀️ Try build successful - checks-actions
Build commit: d1b1f4501d48606232f1e44f2b76d126f68f3aea (d1b1f4501d48606232f1e44f2b76d126f68f3aea)

@rust-timer
Copy link
Collaborator

Queued d1b1f4501d48606232f1e44f2b76d126f68f3aea with parent ab5b9ae, future comparison URL.

@rustbot label: +S-waiting-on-perf

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jan 4, 2021
@rust-timer
Copy link
Collaborator

Finished benchmarking try commit (d1b1f4501d48606232f1e44f2b76d126f68f3aea): comparison url.

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. Please note that if the perf results are neutral, you should likely undo the rollup=never given below by specifying rollup- to bors.

Importantly, though, if the results of this run are non-neutral do not roll this PR up -- it will mask other regressions or improvements in the roll up.

@bors rollup=never
@rustbot label: +S-waiting-on-review -S-waiting-on-perf

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Jan 4, 2021
@Aaron1011
Copy link
Member Author

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@bors
Copy link
Contributor

bors commented Jan 5, 2021

⌛ Trying commit 7067bf03e7d3d17efa70f49ed7d4c49cc1690eb8 with merge e38d08da6180ca084747cc422341b0a81287b687...

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 23, 2021
@petrochenkov petrochenkov removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 23, 2021
@Aaron1011
Copy link
Member Author

Blocked on #82448

Aaron1011 added a commit to Aaron1011/rust that referenced this pull request Feb 27, 2021
When token-based attribute handling is implemeneted in rust-lang#80689,
we will need to access tokens from `HasAttrs` (to perform
cfg-stripping), and we will to access attributes from `HasTokens` (to
construct a `PreexpTokenStream`).

This PR merges the `HasAttrs` and `HasTokens` traits into a new
`AstLike` trait. The previous `HasAttrs` impls from `Vec<Attribute>` and `AttrVec`
are removed - they aren't attribute targets, so the impls never really
made sense.
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 27, 2021
…=petrochenkov

Combine HasAttrs and HasTokens into AstLike

When token-based attribute handling is implemeneted in rust-lang#80689,
we will need to access tokens from `HasAttrs` (to perform
cfg-stripping), and we will to access attributes from `HasTokens` (to
construct a `PreexpTokenStream`).

This PR merges the `HasAttrs` and `HasTokens` traits into a new
`AstLike` trait. The previous `HasAttrs` impls from `Vec<Attribute>` and `AttrVec`
are removed - they aren't attribute targets, so the impls never really
made sense.
@Aaron1011 Aaron1011 force-pushed the feature/new-preeexp-tts branch from 9264e15 to aeaa8b1 Compare February 27, 2021 16:12
@Aaron1011
Copy link
Member Author

@bors try @rust-timer queue

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@rustbot label: +S-waiting-on-perf

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Feb 27, 2021
@bors
Copy link
Contributor

bors commented Feb 27, 2021

⌛ Trying commit aeaa8b1 with merge 023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b...

@bors
Copy link
Contributor

bors commented Feb 27, 2021

☀️ Try build successful - checks-actions
Build commit: 023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b (023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b)

@rust-timer
Copy link
Collaborator

Queued 023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b with parent 8e863eb, future comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking try commit (023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b): comparison url.

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. Please note that if the perf results are neutral, you should likely undo the rollup=never given below by specifying rollup- to bors.

Importantly, though, if the results of this run are non-neutral do not roll this PR up -- it will mask other regressions or improvements in the roll up.

@bors rollup=never
@rustbot label: +S-waiting-on-review -S-waiting-on-perf

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Feb 27, 2021
@Aaron1011
Copy link
Member Author

This thread has gotten enormous. Per @petrochenkov's suggestion, I've opened a new PR at #82608

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-attributes Area: Attributes (`#[…]`, `#![…]`) A-proc-macros Area: Procedural macros S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. S-waiting-on-review Status: Awaiting review from the assignee but also interested parties.
Projects
None yet
Development

Successfully merging this pull request may close these issues.