Skip to content
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

expand: Some cleanup #82107

Merged
merged 3 commits into from
Feb 16, 2021
Merged

expand: Some cleanup #82107

merged 3 commits into from
Feb 16, 2021

Conversation

petrochenkov
Copy link
Contributor

See individual commits for details.

r? @Aaron1011

Maybe it was used before the introduction of placeholders, but now it has no effect.
Starting from rust-lang#63468 cfg attributes on variants, fields, fn params etc. are processed together with other attributes (via `configure!`).
@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 14, 2021
@@ -1192,7 +1188,6 @@ impl<'a, 'b> MutVisitor for InvocationCollector<'a, 'b> {
}

fn visit_pat(&mut self, pat: &mut P<ast::Pat>) {
self.cfg.configure_pat(pat);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't find a configure! call that configures patterns.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Patterns themselves do not support attributes (including cfg attributes).
configure_pat only configures fields in PatKind::Struct which are already configure!d in fn flat_map_field_pattern.

@Aaron1011
Copy link
Member

In the future, we might want to try to unify the 'normal' cfg-expansion performed by InvocationCollector, and the 'deep' cfg-expansion performed by derive.

Regardless, all of these changes look good to me.

@bors r+

@bors
Copy link
Contributor

bors commented Feb 14, 2021

📌 Commit 6e11a8b has been approved by Aaron1011

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 14, 2021
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 16, 2021
…as-schievink

Rollup of 19 pull requests

Successful merges:

 - rust-lang#81503 (Suggest to create a new `const` item if the `fn` in the array is a `const fn`)
 - rust-lang#81897 (Add match pattern diagnostics regression test)
 - rust-lang#81975 (Seal the CommandExt, OsStrExt and OsStringExt traits)
 - rust-lang#82009 (const_generics: Dont evaluate array length const when handling errors)
 - rust-lang#82060 (Fix typos in BTreeSet::{first, last} docs)
 - rust-lang#82061 (CTFE validation: catch ReadPointerAsBytes and better error)
 - rust-lang#82063 (Fixed minor typo in catch_unwind docs)
 - rust-lang#82067 (const_generics: Fix incorrect ty::ParamEnv::empty() usage)
 - rust-lang#82077 (Edit `rustc_arena::DropArena` docs)
 - rust-lang#82096 (Fix a typo)
 - rust-lang#82106 (Remove unnecessary `Option` in `default_doc`)
 - rust-lang#82107 (expand: Some cleanup)
 - rust-lang#82118 (Add missing env!-decl variant)
 - rust-lang#82119 (Fix typo in link to CreateSymbolicLinkW documentation.)
 - rust-lang#82120 (Stabilize Arguments::as_str)
 - rust-lang#82129 (Remove redundant bool_to_option feature gate)
 - rust-lang#82133 (Update link for extern prelude.)
 - rust-lang#82141 (32-bit ARM: Emit `lr` instead of `r14` when specified as an `asm!` output register.)
 - rust-lang#82147 (:arrow_up: rust-analyzer)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 285ea2f into rust-lang:master Feb 16, 2021
@rustbot rustbot added this to the 1.52.0 milestone Feb 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants