-
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
[WIP] Implement token-based handling of attributes #80689
Conversation
r? @estebank (rust-highfive has picked a reviewer for you, use r? to override) |
r? @ghost |
@bors try @rust-timer queue |
Awaiting bors try build completion. |
⌛ Trying commit 5e727f7b6211c00ff10c3e30fffd32c18256e968 with merge 5c23164c47aa9fef76aaf12c9208d3734277eedf... |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
@bors try |
⌛ Trying commit 56295554ac24cd134a63951231028bd0e8392556 with merge d1b1f4501d48606232f1e44f2b76d126f68f3aea... |
@rust-timer queue |
Awaiting bors try build completion. |
☀️ Try build successful - checks-actions |
Queued d1b1f4501d48606232f1e44f2b76d126f68f3aea with parent ab5b9ae, future comparison URL. @rustbot label: +S-waiting-on-perf |
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 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 |
@bors try @rust-timer queue |
Awaiting bors try build completion. |
⌛ Trying commit 7067bf03e7d3d17efa70f49ed7d4c49cc1690eb8 with merge e38d08da6180ca084747cc422341b0a81287b687... |
Blocked on #82448 |
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.
…=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.
9264e15
to
aeaa8b1
Compare
@bors try @rust-timer queue |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit aeaa8b1 with merge 023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b... |
☀️ Try build successful - checks-actions |
Queued 023bf1c81e0066f88abc33b1d53bf5fdd7ebd78b with parent 8e863eb, future comparison URL. |
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 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 |
This thread has gotten enormous. Per @petrochenkov's suggestion, I've opened a new PR at #82608 |
Still needs some cleanup, opening for a preliminary perf run.